AppKernel::registerBundles PHP Method

registerBundles() public method

public registerBundles ( )
    public function registerBundles()
    {
        return [new Symfony\Bundle\FrameworkBundle\FrameworkBundle(), new winzou\Bundle\StateMachineBundle\winzouStateMachineBundle(), new FOS\RestBundle\FOSRestBundle(), new JMS\SerializerBundle\JMSSerializerBundle($this), new Stof\DoctrineExtensionsBundle\StofDoctrineExtensionsBundle(), new WhiteOctober\PagerfantaBundle\WhiteOctoberPagerfantaBundle(), new Sylius\Bundle\LocaleBundle\SyliusLocaleBundle(), new Sylius\Bundle\ResourceBundle\SyliusResourceBundle(), new Doctrine\Bundle\DoctrineBundle\DoctrineBundle(), new Symfony\Bundle\TwigBundle\TwigBundle()];
    }

Usage Example

 /**
  * @param ContainerBuilder $container
  *
  * @return void
  */
 public function prepend(ContainerBuilder $container)
 {
     // Build fos_elastica config for each widget
     $elasticaConfig = [];
     $kernel = new \AppKernel('prod', false);
     $yamlParser = new Yaml();
     foreach ($kernel->registerBundles() as $bundle) {
         /* @var Bundle $bundle */
         $path = $bundle->getPath();
         //If bundle is a widget
         if (0 === strpos($bundle->getNamespace(), 'Victoire\\Widget\\')) {
             //find for a fos_elastica.yml config file
             $widgetConfig = $yamlParser->parse($path . '/Resources/config/config.yml');
             if (is_array($widgetConfig)) {
                 foreach ($widgetConfig['victoire_core']['widgets'] as $_widgetConfig) {
                     if (array_key_exists('fos_elastica', $widgetConfig)) {
                         $_config = ['indexes' => ['widgets' => ['types' => [$_widgetConfig['name'] => ['serializer' => ['groups' => ['search']], 'mappings' => [], 'persistence' => ['driver' => 'orm', 'model' => $_widgetConfig['class'], 'provider' => [], 'listener' => [], 'finder' => []]]]]]];
                         $_config = array_merge_recursive($widgetConfig['fos_elastica'], $_config);
                         $elasticaConfig = array_merge_recursive($elasticaConfig, $_config);
                     }
                 }
             }
         }
     }
     foreach ($container->getExtensions() as $name => $extension) {
         switch ($name) {
             case 'fos_elastica':
                 $container->prependExtensionConfig($name, $elasticaConfig);
                 break;
         }
     }
 }
All Usage Examples Of AppKernel::registerBundles