eZ\Bundle\EzPublishCoreBundle\DependencyInjection\EzPublishCoreExtension::load PHP Method

load() public method

Loads a specific configuration.
public load ( array $configs, ContainerBuilder $container )
$configs array An array of configuration values
$container Symfony\Component\DependencyInjection\ContainerBuilder A ContainerBuilder instance
    public function load(array $configs, ContainerBuilder $container)
    {
        $loader = new Loader\YamlFileLoader($container, new FileLocator(__DIR__ . '/../Resources/config'));
        $configuration = $this->getConfiguration($configs, $container);
        // Note: this is where the transformation occurs
        $config = $this->processConfiguration($configuration, $configs);
        // Base services and services overrides
        $loader->load('services.yml');
        // Security services
        $loader->load('security.yml');
        // Slots
        $loader->load('slot.yml');
        // Default settings
        $this->handleDefaultSettingsLoading($container, $loader);
        $this->registerRepositoriesConfiguration($config, $container);
        $this->registerSiteAccessConfiguration($config, $container);
        $this->registerImageMagickConfiguration($config, $container);
        $this->registerPageConfiguration($config, $container);
        // Routing
        $this->handleRouting($config, $container, $loader);
        // Public API loading
        $this->handleApiLoading($container, $loader);
        $this->handleTemplating($container, $loader);
        $this->handleSessionLoading($container, $loader);
        $this->handleCache($config, $container, $loader);
        $this->handleLocale($config, $container, $loader);
        $this->handleHelpers($config, $container, $loader);
        $this->handleImage($config, $container, $loader);
        // Map settings
        $processor = new ConfigurationProcessor($container, 'ezsettings');
        $processor->mapConfig($config, $this->getMainConfigParser());
        if ($this->suggestionCollector->hasSuggestions()) {
            $message = '';
            $suggestionFormatter = new YamlSuggestionFormatter();
            foreach ($this->suggestionCollector->getSuggestions() as $suggestion) {
                $message .= $suggestionFormatter->format($suggestion) . "\n\n";
            }
            throw new InvalidArgumentException($message);
        }
        $this->handleSiteAccessesRelation($container);
        $this->buildPolicyMap($container);
    }