Beispiel #1
0
 /**
  * @param DefinitionProviderInterface $provider
  */
 public function addDefinitionProvider(DefinitionProviderInterface $provider)
 {
     if ($provider instanceof ContainerAwareInterface) {
         $provider->setContainer($this);
     }
     foreach ($provider->getDefinitions() as $identifier => $definition) {
         if ($definition instanceof ExtendDefinitionInterface) {
             $this->extensions[$definition->getExtended()][] = $definition;
         } else {
             $this->interopDefinitions[$identifier] = $definition;
         }
     }
 }
 /**
  * Register a definition provider.
  */
 private function addProvider(DefinitionProviderInterface $definitionProvider)
 {
     foreach ($definitionProvider->getDefinitions() as $definition) {
         $this->definitions[$definition->getIdentifier()] = $definition;
     }
 }
Beispiel #3
0
 /**
  * @param DefinitionProviderInterface $definition
  */
 public function define(DefinitionProviderInterface $definition)
 {
     foreach ($definition->getDefinitions() as $abstract => $concrete) {
         $this->registerDefinition($abstract, $concrete);
     }
 }