[MonologBundle] Updated the Configuration class to the new syntax
This commit is contained in:
parent
05e73e8e3b
commit
1bb18bf9cc
@ -11,8 +11,8 @@
|
|||||||
|
|
||||||
namespace Symfony\Bundle\MonologBundle\DependencyInjection;
|
namespace Symfony\Bundle\MonologBundle\DependencyInjection;
|
||||||
|
|
||||||
use Symfony\Component\Config\Definition\Builder\NodeBuilder;
|
|
||||||
use Symfony\Component\Config\Definition\Builder\TreeBuilder;
|
use Symfony\Component\Config\Definition\Builder\TreeBuilder;
|
||||||
|
use Symfony\Component\Config\Definition\Builder\ArrayNodeDefinition;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This class contains the configuration information for the bundle
|
* This class contains the configuration information for the bundle
|
||||||
@ -36,14 +36,17 @@ class Configuration
|
|||||||
|
|
||||||
$handlersPrototype = $rootNode
|
$handlersPrototype = $rootNode
|
||||||
->fixXmlConfig('handler')
|
->fixXmlConfig('handler')
|
||||||
|
->children()
|
||||||
->arrayNode('handlers')
|
->arrayNode('handlers')
|
||||||
->canBeUnset()
|
->canBeUnset()
|
||||||
->performNoDeepMerging()
|
->performNoDeepMerging()
|
||||||
->useAttributeAsKey('name')
|
->useAttributeAsKey('name')
|
||||||
->prototype('array')
|
->prototype('array')
|
||||||
|
->children()
|
||||||
->scalarNode('action_level')->end() // fingerscrossed specific
|
->scalarNode('action_level')->end() // fingerscrossed specific
|
||||||
->scalarNode('buffer_size')->end() // fingerscrossed specific
|
->scalarNode('buffer_size')->end() // fingerscrossed specific
|
||||||
->builder($this->getHandlerSubnode())
|
->end()
|
||||||
|
->append($this->getHandlerSubnode())
|
||||||
->validate()
|
->validate()
|
||||||
->ifTrue(function($v) { return 'fingerscrossed' === $v['type'] && !isset($v['handler']); })
|
->ifTrue(function($v) { return 'fingerscrossed' === $v['type'] && !isset($v['handler']); })
|
||||||
->thenInvalid('The handler has to be specified to use a FingersCrossedHandler')
|
->thenInvalid('The handler has to be specified to use a FingersCrossedHandler')
|
||||||
@ -54,10 +57,11 @@ class Configuration
|
|||||||
return $treeBuilder->buildTree();
|
return $treeBuilder->buildTree();
|
||||||
}
|
}
|
||||||
|
|
||||||
private function addHandlerSection(NodeBuilder $node)
|
private function addHandlerSection(ArrayNodeDefinition $node)
|
||||||
{
|
{
|
||||||
$node
|
$node
|
||||||
->performNoDeepMerging()
|
->performNoDeepMerging()
|
||||||
|
->children()
|
||||||
->scalarNode('type')
|
->scalarNode('type')
|
||||||
->isRequired()
|
->isRequired()
|
||||||
->treatNullLike('null')
|
->treatNullLike('null')
|
||||||
@ -69,12 +73,14 @@ class Configuration
|
|||||||
->scalarNode('level')->defaultValue('DEBUG')->end()
|
->scalarNode('level')->defaultValue('DEBUG')->end()
|
||||||
->booleanNode('bubble')->defaultFalse()->end()
|
->booleanNode('bubble')->defaultFalse()->end()
|
||||||
->scalarNode('path')->end() // stream specific
|
->scalarNode('path')->end() // stream specific
|
||||||
|
->end()
|
||||||
;
|
;
|
||||||
}
|
}
|
||||||
|
|
||||||
private function getHandlerSubnode()
|
private function getHandlerSubnode()
|
||||||
{
|
{
|
||||||
$node = new NodeBuilder('handler', 'array');
|
$builder = new TreeBuilder();
|
||||||
|
$node = $builder->root('handler');
|
||||||
$this->addHandlerSection($node);
|
$this->addHandlerSection($node);
|
||||||
|
|
||||||
return $node;
|
return $node;
|
||||||
|
Reference in New Issue
Block a user