ILIAS  release_7 Revision v7.30-3-g800a261c036
All Data Structures Namespaces Files Functions Variables Modules Pages
class.ilVirusScannerSetupAgent.php
Go to the documentation of this file.
1 <?php
2 
3 /* Copyright (c) 2019 Richard Klees <richard.klees@concepts-and-training.de> Extended GPL, see docs/LICENSE */
4 
5 use ILIAS\Setup;
7 use ILIAS\Data;
8 use ILIAS\UI;
9 
10 class ilVirusScannerSetupAgent implements Setup\Agent
11 {
13 
17  protected $refinery;
18 
19  public function __construct(
21  ) {
22  $this->refinery = $refinery;
23  }
24 
28  public function hasConfig() : bool
29  {
30  return true;
31  }
32 
37  {
38  return $this->refinery->custom()->transformation(function ($data) {
39  return new \ilVirusScannerSetupConfig(
41  $data["path_to_scan"] ?? null,
42  $data["path_to_clean"] ?? null,
43  $data["icap_host"] ?? null,
44  $data["icap_port"] ?? null,
45  $data["icap_service_name"] ?? null,
46  $data["icap_client_path"] ?? null,
47  );
48  });
49  }
50 
54  public function getInstallObjective(Setup\Config $config = null) : Setup\Objective
55  {
57  }
58 
62  public function getUpdateObjective(Setup\Config $config = null) : Setup\Objective
63  {
64  if ($config !== null) {
66  }
67  return new Setup\Objective\NullObjective();
68  }
69 
73  public function getBuildArtifactObjective() : Setup\Objective
74  {
75  return new Setup\Objective\NullObjective();
76  }
77 
81  public function getStatusObjective(Setup\Metrics\Storage $storage) : Setup\Objective
82  {
83  return new ilVirusScannerMetricsCollectedObjective($storage);
84  }
85 
89  public function getMigrations() : array
90  {
91  return [];
92  }
93 }
$data
Definition: storeScorm.php:23
An objective is a desired state of the system that is supposed to be created by the setup...
Definition: Objective.php:14
if(!array_key_exists('PATH_INFO', $_SERVER)) $config
Definition: metadata.php:68
getInstallObjective(Setup\Config $config=null)
getStatusObjective(Setup\Metrics\Storage $storage)
__construct(Refinery\Factory $refinery)
getUpdateObjective(Setup\Config $config=null)
Builds data types.
Definition: Factory.php:19
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
A transformation is a function from one datatype to another.
A configuration for the setup.
Definition: Config.php:10