ILIAS  trunk Revision v11.0_alpha-3011-gc6b235a2e85
class.ilVirusScannerFactory.php
Go to the documentation of this file.
1<?php
2
19declare(strict_types=1);
20
22{
23 public static function _getInstance(): ?ilVirusScanner
24 {
25 $vs = null;
26
27 if (defined('IL_VIRUS_SCANNER') && IL_VIRUS_SCANNER === 'icap') {
28 if (defined('IL_ICAP_CLIENT') && IL_ICAP_CLIENT !== '') {
29 $vs = new ilVirusScannerICapClient('', '');
30 } else {
31 $vs = new ilVirusScannerICapRemoteAvClient('', '');
32 }
33 } else {
34 switch (IL_VIRUS_SCANNER) {
35 case 'Sophos':
36 $vs = new ilVirusScannerSophos(IL_VIRUS_SCAN_COMMAND, IL_VIRUS_CLEAN_COMMAND);
37 break;
38
39 case 'AntiVir':
40 global $DIC;
41 $DIC->logger()->root()->error('AntiVir is deprecated, please install and use a different virus scanner.');
42 $vs = new ilVirusScannerAntiVir(IL_VIRUS_SCAN_COMMAND, IL_VIRUS_CLEAN_COMMAND);
43 break;
44
45 case 'ClamAV':
46 $vs = new ilVirusScannerClamAV(IL_VIRUS_SCAN_COMMAND, IL_VIRUS_CLEAN_COMMAND);
47 break;
48 }
49 }
50
51 return $vs;
52 }
53}
global $DIC
Definition: shib_login.php:26