ILIAS  release_6 Revision v6.24-5-g0c8bfefb3b8
All Data Structures Namespaces Files Functions Variables Modules Pages
ILIAS\Setup\CallableObjective Class Reference

A callable objective wraps a callable into an objective. More...

+ Inheritance diagram for ILIAS\Setup\CallableObjective:
+ Collaboration diagram for ILIAS\Setup\CallableObjective:

Public Member Functions

 __construct (callable $callable, string $label, bool $is_notable, Objective ... $preconditions)
 
 getHash ()
 
 getLabel ()
 
 isNotable ()
 
 getPreconditions (Environment $environment)
 
 achieve (Environment $environment)
 

Protected Attributes

 $callable
 
 $label
 
 $is_notable
 
 $preconditions
 

Detailed Description

A callable objective wraps a callable into an objective.

The callable receives the environment as parameter. It may return an updated version of the environment, other results will be discarded.

Definition at line 15 of file CallableObjective.php.

Constructor & Destructor Documentation

◆ __construct()

ILIAS\Setup\CallableObjective::__construct ( callable  $callable,
string  $label,
bool  $is_notable,
Objective ...  $preconditions 
)

Member Function Documentation

◆ achieve()

ILIAS\Setup\CallableObjective::achieve ( Environment  $environment)

Implements ILIAS\Setup\Objective.

Definition at line 83 of file CallableObjective.php.

References $res.

83  : Environment
84  {
85  $res = call_user_func($this->callable, $environment);
86  if ($res instanceof Environment) {
87  return $res;
88  }
89  return $environment;
90  }
foreach($_POST as $key=> $value) $res

◆ getHash()

ILIAS\Setup\CallableObjective::getHash ( )

Implements ILIAS\Setup\Objective.

Definition at line 48 of file CallableObjective.php.

48  : string
49  {
50  return hash(
51  "sha256",
52  spl_object_hash($this)
53  );
54  }

◆ getLabel()

ILIAS\Setup\CallableObjective::getLabel ( )

Implements ILIAS\Setup\Objective.

Definition at line 59 of file CallableObjective.php.

References ILIAS\Setup\CallableObjective\$label.

59  : string
60  {
61  return $this->label;
62  }

◆ getPreconditions()

ILIAS\Setup\CallableObjective::getPreconditions ( Environment  $environment)

Implements ILIAS\Setup\Objective.

Definition at line 75 of file CallableObjective.php.

References ILIAS\Setup\CallableObjective\$preconditions.

75  : array
76  {
77  return $this->preconditions;
78  }

◆ isNotable()

ILIAS\Setup\CallableObjective::isNotable ( )

Implements ILIAS\Setup\Objective.

Definition at line 67 of file CallableObjective.php.

References ILIAS\Setup\CallableObjective\$is_notable.

67  : bool
68  {
69  return $this->is_notable;
70  }

Field Documentation

◆ $callable

ILIAS\Setup\CallableObjective::$callable
protected

Definition at line 20 of file CallableObjective.php.

Referenced by ILIAS\Setup\CallableObjective\__construct().

◆ $is_notable

ILIAS\Setup\CallableObjective::$is_notable
protected

◆ $label

ILIAS\Setup\CallableObjective::$label
protected

◆ $preconditions

ILIAS\Setup\CallableObjective::$preconditions
protected

The documentation for this class was generated from the following file: