/** * Registers services on the given app. * * This method should only be used to configure services and parameters. * It should not get services. */ public function register(Application $app) { $facadeServiceLocator = new ArrayAccessAdapter($app); FacadeAccessor::setServiceLocator($facadeServiceLocator); }
/** * @Given I set a service locator with an instance of :type registered as :registeredName */ public function iSetAServiceLocatorWithAnInstanceOfRegisteredAs($type, $registeredName) { $object = new $type(); $serviceLocatorGetter = function ($name) use($registeredName, $object) { if ($name === $registeredName) { return $object; } }; $serviceLocator = new CallableAdapter($serviceLocatorGetter); FacadeAccessor::setServiceLocator($serviceLocator); }