Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/matomo-org/matomo.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordiosmosis <benaka@piwik.pro>2015-06-01 09:00:37 +0300
committerdiosmosis <benaka@piwik.pro>2015-06-05 23:20:03 +0300
commit33cfb1d02cae5b1454d223f15acef9db1f65f77c (patch)
treef2a6d7c26e773037895a139e7e6d795036aa371b /core/Application/Environment.php
parent53a29ed2338094321bb077574e369e62231d62da (diff)
Move test environment setup logic from TestingEnvironmentVariables::addHooks() to a new EnvironmentManipulator. Remove MakeGlobalSettingsWithFile since it is now redundant.
Diffstat (limited to 'core/Application/Environment.php')
-rw-r--r--core/Application/Environment.php22
1 files changed, 21 insertions, 1 deletions
diff --git a/core/Application/Environment.php b/core/Application/Environment.php
index edd60180d5..b77c7d5c68 100644
--- a/core/Application/Environment.php
+++ b/core/Application/Environment.php
@@ -85,6 +85,8 @@ class Environment
*/
public function init()
{
+ $this->invokeBeforeContainerCreatedHook();
+
$this->container = $this->createContainer();
StaticContainer::set($this->container);
@@ -112,7 +114,9 @@ class Environment
{
$pluginList = $this->getPluginListCached();
$settings = $this->getGlobalSettingsCached();
- $definitions = array_merge(StaticContainer::getDefinitions(), array($this->definitions));
+
+ $extraDefinitions = $this->getExtraDefinitionsFromManipulators();
+ $definitions = array_merge(StaticContainer::getDefinitions(), $extraDefinitions, array($this->definitions));
$containerFactory = new ContainerFactory($pluginList, $settings, $this->environment, $definitions);
return $containerFactory->create();
@@ -185,4 +189,20 @@ class Environment
return null;
}
+
+ private function invokeBeforeContainerCreatedHook()
+ {
+ foreach (self::$globalEnvironmentManipulators as $manipulator) {
+ $manipulator->beforeContainerCreated();
+ }
+ }
+
+ private function getExtraDefinitionsFromManipulators()
+ {
+ $result = array();
+ foreach (self::$globalEnvironmentManipulators as $manipulator) {
+ $result = array_merge($result, $manipulator->getExtraDefinitions());
+ }
+ return $result;
+ }
}