/** * {@inheritdoc} */ public function register(ServiceProviderInterface $provider, array $values = array()) { // Não pode ser "elseif" pois um provider pode ser ao mesmo // tempo todos os tipos de provider if ($provider instanceof BootableProviderInterface) { if (!isset($this->bootableProviders[$provider->getPriority()])) { $this->bootableProviders[$provider->getPriority()] = array(); } $this->bootableProviders[$provider->getPriority()][] = $provider; } if ($provider instanceof RouteProviderInterface) { $this->routeProviders[] = $provider; } if ($provider instanceof SubscriberProviderInterface) { $this->subscribeProviders[] = $provider; } if ($provider instanceof DoctrineSubscriberProviderInterface) { $this->doctrineSubscribeProviders[] = $provider; } if ($provider instanceof TwigExtensionableProviderInterface) { $this->twigExtensionsProviders[] = $provider; } if ($provider instanceof FormExtensionableProviderInterface) { $this->formExtensionsProviders[] = $provider; } parent::register($provider, $values); return $this; }