public function load(array $configs, ContainerBuilder $container)
{
$configuration = $this->getConfiguration($configs, $container);
$config = $this->processConfiguration($configuration, $configs);
$loader = new XmlFileLoader($container, new FileLocator(__DIR__ . '/../Resources/config'));
$loader->load('metrics.xml');
foreach ($config['collectors'] as $name => $colConfig) {
$definition = $this->createCollector($colConfig['type'], $colConfig);
$container->setDefinition('beberlei_metrics.collector.' . $name, $definition);
}
if (!$config['default'] && 1 === count($config['collectors'])) {
$container->setAlias('beberlei_metrics.collector', 'beberlei_metrics.collector.' . $name);
} elseif ($container->hasDefinition('beberlei_metrics.collector.' . $config['default'])) {
$container->setAlias('beberlei_metrics.collector', 'beberlei_metrics.collector.' . $config['default']);
} else {
throw new \LogicException('You should select a default collector');
}
}