methodMap = array( 'service_from_anonymous_factory' => 'getServiceFromAnonymousFactoryService', 'service_with_method_call_and_factory' => 'getServiceWithMethodCallAndFactoryService', ); } /** * Gets the 'service_from_anonymous_factory' service. * * This service is shared. * This method always returns the same instance of the service. * * @return \Bar\FooClass A Bar\FooClass instance. */ protected function getServiceFromAnonymousFactoryService() { return $this->services['service_from_anonymous_factory'] = call_user_func(array(new \Bar\FooClass(), 'getInstance')); } /** * Gets the 'service_with_method_call_and_factory' service. * * This service is shared. * This method always returns the same instance of the service. * * @return \Bar\FooClass A Bar\FooClass instance. */ protected function getServiceWithMethodCallAndFactoryService() { $this->services['service_with_method_call_and_factory'] = $instance = new \Bar\FooClass(); $instance->setBar(\Bar\FooClass::getInstance()); return $instance; } }