@@ -28,9 +28,11 @@ class Configuration implements ConfigurationInterface
2828 */
2929 public function getConfigTreeBuilder ()
3030 {
31- $ treeBuilder = new TreeBuilder () ;
31+ $ nodeName = ' pcdx_parameter_encryption ' ;
3232
33- $ rootNode = $ treeBuilder ->root ('pcdx_parameter_encryption ' );
33+ $ treeBuilder = new TreeBuilder ($ nodeName );
34+
35+ $ rootNode = $ this ->getRootNodeFromTreeBuilder ($ treeBuilder , $ nodeName );
3436
3537 $ rootNode
3638 ->fixXmlConfig ('algorithm ' )
@@ -84,10 +86,13 @@ public function getConfigTreeBuilder()
8486 */
8587 public function addCryptoNode ($ type )
8688 {
87- $ builder = new TreeBuilder ();
88- $ node = $ builder ->root ($ type .'ion ' );
89+ $ nodeName = $ type .'ion ' ;
90+
91+ $ treeBuilder = new TreeBuilder ($ nodeName );
8992
90- $ node
93+ $ rootNode = $ this ->getRootNodeFromTreeBuilder ($ treeBuilder , $ nodeName );
94+
95+ $ rootNode
9196 ->info ('Configure ' .$ type .'er. ' )
9297 ->isRequired ()
9398 ->fixXmlConfig ('argument ' )
@@ -143,6 +148,23 @@ public function addCryptoNode($type)
143148 ->end ()
144149 ->end ();
145150
146- return $ node ;
151+ return $ rootNode ;
152+ }
153+
154+ /**
155+ * Get root node from tree builder.
156+ *
157+ * @deprecated symfony/config 4.2 Simply use TreeBuilder::getRootNode()
158+ *
159+ * @param TreeBuilder $treeBuilder
160+ * @param string $nodeName
161+ *
162+ * @return NodeDefinition
163+ */
164+ private function getRootNodeFromTreeBuilder (TreeBuilder $ treeBuilder , string $ nodeName ): NodeDefinition
165+ {
166+ return (method_exists ($ treeBuilder , 'getRootNode ' )
167+ ? $ treeBuilder ->getRootNode ()
168+ : $ treeBuilder ->root ($ nodeName ));
147169 }
148170}
0 commit comments