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);
}