getDefaultParameters())); } /** * Gets the 'barFactory' service. * * This service is shared. * This method always returns the same instance of the service. * * @return BarClassFactory A BarClassFactory instance. */ protected function getBarFactoryService() { return $this->services['barFactory'] = new \BarClassFactory(); $this->applyIntrefaceInjectors($instance); } /** * Gets the 'bar' service. * * This service is shared. * This method always returns the same instance of the service. * * @return Object An instance returned by barFactory::createBarClass(). */ protected function getBarService() { return $this->services['bar'] = $this->get('barFactory')->createBarClass(); $this->applyIntrefaceInjectors($instance); } /** * Returns service ids for a given tag. * * @param string $name The tag name * * @return array An array of tags */ public function findTaggedServiceIds($name) { static $tags = array( ); return isset($tags[$name]) ? $tags[$name] : array(); } /** * Applies all known interface injection calls * * @param Object $instance */ protected function applyIntrefaceInjectors($instance) { if ($instance instanceof \BarClass) { $instance->setFoo('someValue'); } } }