/**
  * Load config.
  * @param \Symfony\Component\DependencyInjection\ContainerBuilder $p_container
  * @param array                                                   $p_arrConfig
  */
 private function loadConfig(ContainerBuilder $p_container, array $p_arrConfig)
 {
     // ------------------------- DECLARE ---------------------------//
     // Load defined options in config file.
     foreach (UConfiguration::getArrOptionAll() as $option) {
         if (empty($p_arrConfig[$option]) == false || $p_arrConfig[$option] === false) {
             $p_container->setParameter(Configuration::$NODE_ROOT . '.' . $option, $p_arrConfig[$option]);
         }
     }
 }
 /**
  * @return \Symfony\Component\Config\Definition\Builder\TreeBuilder
  */
 public function getConfigTreeBuilder()
 {
     $treeBuilder = new TreeBuilder();
     $rootNode = $treeBuilder->root(Configuration::$NODE_ROOT);
     // ------------------------- DECLARE ---------------------------//
     // Add all available configuration nodes.
     $nodeBuilder = $rootNode->addDefaultsIfNotSet()->children();
     UConfiguration::addArrOptionBoolean($nodeBuilder);
     UConfiguration::addArrOptionInteger($nodeBuilder);
     UConfiguration::addArrOptionString($nodeBuilder);
     UConfiguration::addArrOptionArray($nodeBuilder);
     UConfiguration::addArrOptionObject($nodeBuilder);
     $nodeBuilder->end();
     return $treeBuilder;
 }
 /**
  * @param \Symfony\Component\OptionsResolver\OptionsResolver $p_resolver
  */
 public function configureOptions(OptionsResolver $p_resolver)
 {
     $arrDefault = array();
     $arrDefined = array();
     // ------------------------- DECLARE ---------------------------//
     foreach (UConfiguration::getArrOptionAll() as $option) {
         // If defined in config file, set default value to form, else set option as available.
         if ($this->m_container->hasParameter(Configuration::$NODE_ROOT . '.' . $option)) {
             $arrDefault[$option] = $this->m_container->getParameter(Configuration::$NODE_ROOT . '.' . $option);
         } else {
             $arrDefined[] = $option;
         }
     }
     $p_resolver->setDefined($arrDefined);
     $p_resolver->setDefaults($arrDefault);
 }