Skip to content

Commit f1435e8

Browse files
xkobalNyholm
authored andcommitted
Fix another SF 4.2 deprecation (#211)
* Fix another SF 4.2 deprecation * Fix another SF 4.2 deprecation * Add phpdoc * Fix PHPCS * Fix PHPCS * Update Configuration.php
1 parent 5562522 commit f1435e8

File tree

1 file changed

+23
-10
lines changed

1 file changed

+23
-10
lines changed

DependencyInjection/Configuration.php

Lines changed: 23 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -38,17 +38,33 @@ public function __construct($debug)
3838
$this->debug = (bool) $debug;
3939
}
4040

41+
/**
42+
* Proxy to get root node for Symfony < 4.2.
43+
*
44+
* @param TreeBuilder $treeBuilder
45+
* @param string $name
46+
*
47+
* @return NodeDefinition
48+
*/
49+
protected function getRootNode(TreeBuilder $treeBuilder, string $name)
50+
{
51+
if (\method_exists($treeBuilder, 'getRootNode')) {
52+
return $treeBuilder->getRootNode();
53+
} else {
54+
return $treeBuilder->root($name);
55+
}
56+
}
57+
4158
/**
4259
* Generates the configuration tree builder.
4360
*
4461
* @return TreeBuilder The tree builder
4562
*/
4663
public function getConfigTreeBuilder()
4764
{
48-
$treeBuilder = new TreeBuilder();
49-
$rootNode = $treeBuilder->root('bazinga_geocoder');
65+
$treeBuilder = new TreeBuilder('bazinga_geocoder');
5066

51-
$rootNode
67+
$this->getRootNode($treeBuilder, 'bazinga_geocoder')
5268
->children()
5369
->append($this->getProvidersNode())
5470
->arrayNode('profiling')
@@ -85,10 +101,9 @@ public function getConfigTreeBuilder()
85101
*/
86102
private function getProvidersNode()
87103
{
88-
$treeBuilder = new TreeBuilder();
89-
$node = $treeBuilder->root('providers');
104+
$treeBuilder = new TreeBuilder('providers');
90105

91-
$node
106+
return $this->getRootNode($treeBuilder, 'providers')
92107
->requiresAtLeastOneElement()
93108
->useAttributeAsKey('name')
94109
->prototype('array')
@@ -111,8 +126,6 @@ private function getProvidersNode()
111126
->append($this->createClientPluginNode())
112127
->end()
113128
->end();
114-
115-
return $node;
116129
}
117130

118131
/**
@@ -122,8 +135,8 @@ private function getProvidersNode()
122135
*/
123136
private function createClientPluginNode()
124137
{
125-
$builder = new TreeBuilder();
126-
$node = $builder->root('plugins');
138+
$builder = new TreeBuilder('plugins');
139+
$node = $this->getRootNode($builder, 'plugins');
127140

128141
/** @var ArrayNodeDefinition $pluginList */
129142
$pluginList = $node

0 commit comments

Comments
 (0)