Prepares the ContainerBuilder before it is compiled.
ContainerBuilder $container A ContainerBuilder instance:
protected function prepareContainer(ContainerBuilder $container) {
$extensions = array();
foreach ($this->bundles as $bundle) {
if ($extension = $bundle
->getContainerExtension()) {
$container
->registerExtension($extension);
$extensions[] = $extension
->getAlias();
}
if ($this->debug) {
$container
->addObjectResource($bundle);
}
}
foreach ($this->bundles as $bundle) {
$bundle
->build($container);
}
// ensure these extensions are implicitly loaded
$container
->getCompilerPassConfig()
->setMergePass(new MergeExtensionConfigurationPass($extensions));
}