ILIAS  release_6 Revision v6.24-5-g0c8bfefb3b8
All Data Structures Namespaces Files Functions Variables Modules Pages
Agent.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 namespace ILIAS\Setup;
6 
7 use ILIAS\UI;
9 
13 interface Agent
14 {
18  public function hasConfig() : bool;
19 
28 
36 
42  public function getInstallObjective(Config $config = null) : Objective;
43 
49  public function getUpdateObjective(Config $config = null) : Objective;
50 
56  public function getBuildArtifactObjective() : Objective;
57 }
This describes commonalities between all inputs.
Definition: Input.php:31
getArrayToConfigTransformation()
Agents must be able to tell how to create a configuration from a nested array.
An objective is a desired state of the system that is supposed to be created by the setup...
Definition: Objective.php:14
getUpdateObjective(Config $config=null)
Get the goal the agent wants to achieve on update.
if(!array_key_exists('PATH_INFO', $_SERVER)) $config
Definition: metadata.php:68
getBuildArtifactObjective()
Get the goal the agent wants to achieve to build artifacts.
getInstallObjective(Config $config=null)
Get the goals the agent wants to achieve on setup.
A agent is some component that performs part of the setup process.
Definition: Agent.php:13
hasConfig()
Does this agent require a configuration?
A transformation is a function from one datatype to another.
A configuration for the setup.
Definition: Config.php:10
getConfigInput(Config $config=null)
Agents must provide an input to set the configuration if they have a configuration.