ILIAS
trunk Revision v11.0_alpha-2645-g16283d3b3f8
|
Public Member Functions | |
resolveDependencies (array $disambiguation, OfComponent ... $components) | |
Resolves dependencies of all components. More... | |
Protected Member Functions | |
resolvePull (OfComponent $component, In $in, array &$others) | |
resolveSeek (In $in, array &$others) | |
resolveUse (OfComponent $component, array &$disambiguation, In $in, array &$others) | |
disambiguate (OfComponent $component, array &$disambiguation, In $in) | |
findCycles (OfComponent ... $components) | |
findCyclesWith (array $visited, OfComponent $component, In $in) | |
Definition at line 23 of file Resolver.php.
|
protected |
Definition at line 169 of file Resolver.php.
References $c, ILIAS\Component\Dependencies\OfComponent\getComponentName(), ILIAS\Component\Dependencies\In\getName(), and null.
Referenced by ILIAS\Component\Dependencies\Resolver\resolveUse().
|
protected |
Definition at line 183 of file Resolver.php.
References ILIAS\Component\Dependencies\Resolver\findCyclesWith().
Referenced by ILIAS\Component\Dependencies\Resolver\resolveDependencies().
|
protected |
Definition at line 194 of file Resolver.php.
References $out, ILIAS\ResourceStorage\Flavour\Machine\DefaultMachines\from(), and ILIAS\Component\Dependencies\In\getResolvedBy().
Referenced by ILIAS\Component\Dependencies\Resolver\findCycles().
ILIAS\Component\Dependencies\Resolver::resolveDependencies | ( | array | $disambiguation, |
OfComponent ... | $components | ||
) |
Resolves dependencies of all components.
This is unambigous for all types of dependencies but the use/implement-pair. If there would be ambiguities, these can be disambiguated by the first argument.
The structure of the first argument is as such: keys are components that use services ("dependant") that need disambiguation, value for each dependant is an array where the key is the definition ("dependency") and the value is the implementation ("implementation") to be used.
The entry "*" for the dependant will define fallbacks to be used for all components that have no explicit disambiguation.
So, the array might look as such:
[ "*" => [ "ILIAS\Logger\Logger" => ILIAS ], "ILIAS\Database\DB" => [ "ILIAS\Logger\Logger" => ILIAS ] ]
array<string,array<string,string>> | $disambiguation |
OfComponent[] |
Definition at line 53 of file Resolver.php.
References $components, Vendor\Package\$d, ILIAS\Component\Dependencies\Resolver\findCycles(), ILIAS\Component\Dependencies\Resolver\resolvePull(), ILIAS\Component\Dependencies\Resolver\resolveSeek(), and ILIAS\Component\Dependencies\Resolver\resolveUse().
|
protected |
Definition at line 91 of file Resolver.php.
References ILIAS\Component\Dependencies\In\addResolution(), ILIAS\Component\Dependencies\In\getName(), and null.
Referenced by ILIAS\Component\Dependencies\Resolver\resolveDependencies().
|
protected |
Definition at line 114 of file Resolver.php.
References ILIAS\Component\Dependencies\In\addResolution(), and ILIAS\Component\Dependencies\In\getName().
Referenced by ILIAS\Component\Dependencies\Resolver\resolveDependencies().
|
protected |
Definition at line 126 of file Resolver.php.
References ILIAS\Component\Dependencies\In\addResolution(), ILIAS\Component\Dependencies\Resolver\disambiguate(), and ILIAS\Component\Dependencies\In\getName().
Referenced by ILIAS\Component\Dependencies\Resolver\resolveDependencies().