diff --git a/src/DependencyInjection/CacheExtension.php b/src/DependencyInjection/CacheExtension.php index 72f9b21..35bfd16 100644 --- a/src/DependencyInjection/CacheExtension.php +++ b/src/DependencyInjection/CacheExtension.php @@ -57,7 +57,11 @@ public function load(array $configs, ContainerBuilder $container) $this->registerServices($container, $config); // Add toolbar and data collector if we are debuging - if ($container->getParameter('kernel.debug')) { + if (!isset($config['data_collector']['enabled'])) { + $config['data_collector']['enabled'] = $container->getParameter('kernel.debug'); + } + + if ($config['data_collector']['enabled']) { $loader->load('data-collector.yml'); } diff --git a/src/DependencyInjection/Configuration.php b/src/DependencyInjection/Configuration.php index 9d35f6f..7da184b 100644 --- a/src/DependencyInjection/Configuration.php +++ b/src/DependencyInjection/Configuration.php @@ -40,6 +40,7 @@ public function getConfigTreeBuilder() ->append($this->addSerializerSection()) ->append($this->addValidationSection()) ->append($this->addLoggingSection()) + ->append($this->addDataCollectorSection()) ->end(); return $treeBuilder; @@ -236,4 +237,20 @@ private function addRouterSection() return $node; } + + /** + * @return ArrayNodeDefinition + */ + private function addDataCollectorSection() + { + $tree = new TreeBuilder(); + $node = $tree->root('data_collector'); + + $node + ->children() + ->booleanNode('enabled')->end() + ->end(); + + return $node; + } }