From 8dc40e4d2928ac343b08ae786cef0da1a38130c2 Mon Sep 17 00:00:00 2001 From: kbond Date: Fri, 3 Jun 2011 14:38:47 -0400 Subject: [PATCH 1/8] [FrameworkBundle] added config:dump console command --- .../Command/ConfigDumpCommand.php | 267 ++++++++++++++++++ .../Command/ContainerDebugCommand.php | 2 +- .../FrameworkBundle/Command/DebugCommand.php | 47 +++ 3 files changed, 315 insertions(+), 1 deletion(-) create mode 100644 src/Symfony/Bundle/FrameworkBundle/Command/ConfigDumpCommand.php create mode 100644 src/Symfony/Bundle/FrameworkBundle/Command/DebugCommand.php diff --git a/src/Symfony/Bundle/FrameworkBundle/Command/ConfigDumpCommand.php b/src/Symfony/Bundle/FrameworkBundle/Command/ConfigDumpCommand.php new file mode 100644 index 0000000000..c10cdd5a66 --- /dev/null +++ b/src/Symfony/Bundle/FrameworkBundle/Command/ConfigDumpCommand.php @@ -0,0 +1,267 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +namespace Symfony\Bundle\FrameworkBundle\Command; + +use Symfony\Component\Console\Input\InputArgument; +use Symfony\Component\Console\Input\InputOption; +use Symfony\Component\Console\Input\InputInterface; +use Symfony\Component\Console\Output\OutputInterface; +use Symfony\Component\Console\Output\Output; +use Symfony\Component\HttpKernel\Bundle\Bundle; +use Symfony\Component\Config\Definition\NodeInterface; +use Symfony\Component\Config\Definition\ArrayNode; +use Symfony\Component\Config\Definition\PrototypedArrayNode; +use Symfony\Component\Config\Definition\BooleanNode; + +/** + * A console command for dumping available configuration reference + * + * @author Kevin Bond + */ +class ConfigDumpCommand extends DebugCommand +{ + protected $output; + + /** + * @see Command + */ + protected function configure() + { + $this + ->setDefinition(array( + new InputArgument('name', InputArgument::REQUIRED, 'The Bundle or extension alias') + )) + ->setName('config:dump') + ->setDescription('Dumps default configuration for an extension.') + ->setHelp(<<config:dump command dumps the default configuration for an extension/bundle. + +The extension alias or bundle name can be used: + +Example: + + container:debug framework + +or + + container:debug FrameworkBundle + +EOF + ) + ; + } + + /** + * @see Command + */ + protected function execute(InputInterface $input, OutputInterface $output) + { + $this->output = $output; + $kernel = $this->getContainer()->get('kernel'); + $containerBuilder = $this->getContainerBuilder(); + + $name = $input->getArgument('name'); + + $extension = null; + + if (preg_match('/Bundle$/', $name)) { + // input is bundle name + $extension = $kernel->getBundle($name)->getContainerExtension(); + + if (!$extension) { + throw new \LogicException('No extensions with configuration available for "'.$name.'"'); + } + + $message = 'Default configuration for "'.$name.'"'; + } else { + foreach ($kernel->getBundles() as $bundle) { + $extension = $bundle->getContainerExtension(); + + if ($extension && ($extension->getAlias() == $name)) { + break; + } + + $extension = null; + } + + if (!$extension) { + throw new \LogicException('No extension with alias "'.$name.'" is enabled'); + } + + $message = 'Default configuration for extension with alias: "'.$name.'"'; + } + + $configuration = $extension->getConfiguration(array(), $containerBuilder); + + if (!$configuration) { + throw new \LogicException('The extension with alias "'.$extension->getAlias(). + '" does not have it\'s getConfiguration() method setup'); + } + + $rootNode = $configuration->getConfigTreeBuilder()->buildTree(); + + $output->writeln($message); + + // root node + $this->outputNode($rootNode); + } + + /** + * Outputs a single config reference line + * + * @param string $text + * @param int $indent + */ + private function outputLine($text, $indent = 0) + { + $indent = strlen($text) + $indent; + + $format = '%'.$indent.'s'; + + $this->output->writeln(sprintf($format, $text)); + } + + private function outputArray(array $array, $depth) + { + $is_indexed = array_values($array) === $array; + + foreach ($array as $key => $value) { + if (is_array($value)) { + $val = ''; + } else { + $val = $value; + } + + if ($is_indexed) { + $this->outputLine('- '.$val, $depth * 4); + + } else { + $text = sprintf('%-20s %s', $key.':', $val); + $this->outputLine($text, $depth * 4); + + } + + if (is_array($value)) { + $this->outputArray($value, $depth + 1); + } + } + } + + /** + * @param NodeInterface $node + * @param int $depth + */ + private function outputNode(NodeInterface $node, $depth = 0) + { + $comments = array(); + $default = ''; + $defaultArray = null; + $children = null; + $example = $node->getExample(); + + // defaults + if ($node instanceof ArrayNode) { + $children = $node->getChildren(); + + if ($node instanceof PrototypedArrayNode) { + $prototype = $node->getPrototype(); + + if ($prototype instanceof ArrayNode) { + $children = $prototype->getChildren(); + } + + // check for attribute as key + if ($key = $node->getKeyAttribute()) { + $keyNode = new ArrayNode($key, $node); + $keyNode->setInfo('Prototype'); + + // add children + foreach ($children as $childNode) { + $keyNode->addChild($childNode); + } + $children = array($key => $keyNode); + } + } + + if (!$children) { + if ($node->hasDefaultValue() && count($defaultArray = $node->getDefaultValue())) { + $default = ''; + } elseif (!is_array($example)) { + $default = '[]'; + } + } + } else { + $default = '~'; + + if ($node->hasDefaultValue()) { + $default = $node->getDefaultValue(); + + if (true === $default) { + $default = 'true'; + } elseif (false === $default) { + $default = 'false'; + } elseif (null === $default) { + $default = '~'; + } + } + } + + // required? + if ($node->isRequired()) { + $comments[] = 'Required'; + } + + // example + if ($example && !is_array($example)) { + $comments[] = 'Example: '.$example; + } + + $default = (string) $default != '' ? ' '.$default : ''; + $comments = count($comments) ? '# '.implode(', ', $comments) : ''; + + $text = sprintf('%-20s %s %s', $node->getName().':', $default, $comments); + + if ($info = $node->getInfo()) { + $this->outputLine(''); + $this->outputLine('# '.$info, $depth * 4); + } + + $this->outputLine($text, $depth * 4); + + // output defaults + if ($defaultArray) { + $this->outputLine(''); + + $message = count($defaultArray) > 1 ? 'Defaults' : 'Default'; + + $this->outputLine('# '.$message.':', $depth * 4 + 4); + + $this->outputArray($defaultArray, $depth + 1); + } + + if (is_array($example)) { + $this->outputLine(''); + + $message = count($example) > 1 ? 'Examples' : 'Example'; + + $this->outputLine('# '.$message.':', $depth * 4 + 4); + + $this->outputArray($example, $depth + 1); + } + + if ($children) { + foreach ($children as $childNode) { + $this->outputNode($childNode, $depth + 1); + } + } + } +} diff --git a/src/Symfony/Bundle/FrameworkBundle/Command/ContainerDebugCommand.php b/src/Symfony/Bundle/FrameworkBundle/Command/ContainerDebugCommand.php index 305832545f..e252287d70 100644 --- a/src/Symfony/Bundle/FrameworkBundle/Command/ContainerDebugCommand.php +++ b/src/Symfony/Bundle/FrameworkBundle/Command/ContainerDebugCommand.php @@ -27,7 +27,7 @@ use Symfony\Component\Config\FileLocator; * * @author Ryan Weaver */ -class ContainerDebugCommand extends ContainerAwareCommand +class ContainerDebugCommand extends DebugCommand { /** * @var ContainerBuilder diff --git a/src/Symfony/Bundle/FrameworkBundle/Command/DebugCommand.php b/src/Symfony/Bundle/FrameworkBundle/Command/DebugCommand.php new file mode 100644 index 0000000000..5bfc8b41ad --- /dev/null +++ b/src/Symfony/Bundle/FrameworkBundle/Command/DebugCommand.php @@ -0,0 +1,47 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +namespace Symfony\Bundle\FrameworkBundle\Command; + +use Symfony\Component\DependencyInjection\Loader\XmlFileLoader; +use Symfony\Component\Config\FileLocator; +use Symfony\Component\DependencyInjection\ContainerBuilder; + +/** + * Base command for debug tasks + * + * @author Kevin Bond + */ +abstract class DebugCommand extends ContainerAwareCommand +{ + /** + * Loads the ContainerBuilder from the cache. + * + * @return ContainerBuilder + */ + protected function getContainerBuilder() + { + if (!$this->getApplication()->getKernel()->isDebug()) { + throw new \LogicException(sprintf('Debug information about the container is only available in debug mode.')); + } + + if (!file_exists($cachedFile = $this->getContainer()->getParameter('debug.container.dump'))) { + throw new \LogicException(sprintf('Debug information about the container could not be found. Please clear the cache and try again.')); + } + + $container = new ContainerBuilder(); + + $loader = new XmlFileLoader($container, new FileLocator()); + $loader->load($cachedFile); + + return $container; + } +} From 58939f16f3b64c98f37d6267f114c2ae2ff6c615 Mon Sep 17 00:00:00 2001 From: kbond Date: Mon, 6 Jun 2011 16:08:45 -0400 Subject: [PATCH 2/8] [TwigBundle] added configuration docs --- .../Bundle/TwigBundle/DependencyInjection/Configuration.php | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/Symfony/Bundle/TwigBundle/DependencyInjection/Configuration.php b/src/Symfony/Bundle/TwigBundle/DependencyInjection/Configuration.php index 160dc671c7..74d52bdf98 100644 --- a/src/Symfony/Bundle/TwigBundle/DependencyInjection/Configuration.php +++ b/src/Symfony/Bundle/TwigBundle/DependencyInjection/Configuration.php @@ -56,6 +56,7 @@ class Configuration implements ConfigurationInterface ->arrayNode('resources') ->addDefaultsIfNotSet() ->defaultValue(array('form_div_layout.html.twig')) + ->setExample(array('MyBundle::form.html.twig')) ->validate() ->ifTrue(function($v) { return !in_array('form_div_layout.html.twig', $v); }) ->then(function($v){ @@ -77,6 +78,7 @@ class Configuration implements ConfigurationInterface ->children() ->arrayNode('globals') ->useAttributeAsKey('key') + ->setExample(array('foo' => '"@bar"', 'pi' => 3.14)) ->prototype('array') ->beforeNormalization() ->ifTrue(function($v){ return is_string($v) && 0 === strpos($v, '@'); }) @@ -116,7 +118,7 @@ class Configuration implements ConfigurationInterface $rootNode ->children() ->scalarNode('autoescape')->end() - ->scalarNode('base_template_class')->end() + ->scalarNode('base_template_class')->setExample('Twig_Template')->end() ->scalarNode('cache')->defaultValue('%kernel.cache_dir%/twig')->end() ->scalarNode('charset')->defaultValue('%kernel.charset%')->end() ->scalarNode('debug')->defaultValue('%kernel.debug%')->end() From 97579587c109b43ca4c8aa35c73c88cd8b01b780 Mon Sep 17 00:00:00 2001 From: kbond Date: Tue, 14 Jun 2011 12:35:15 -0400 Subject: [PATCH 3/8] [FrameworkBundle] added configuration info --- .../DependencyInjection/Configuration.php | 21 ++++++++++--------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/src/Symfony/Bundle/FrameworkBundle/DependencyInjection/Configuration.php b/src/Symfony/Bundle/FrameworkBundle/DependencyInjection/Configuration.php index 5762fb4c33..b8cda65249 100644 --- a/src/Symfony/Bundle/FrameworkBundle/DependencyInjection/Configuration.php +++ b/src/Symfony/Bundle/FrameworkBundle/DependencyInjection/Configuration.php @@ -46,7 +46,7 @@ class Configuration implements ConfigurationInterface $rootNode ->children() - ->scalarNode('charset')->end() + ->scalarNode('charset')->setInfo('general configuration')->end() ->scalarNode('trust_proxy_headers')->defaultFalse()->end() ->scalarNode('secret')->isRequired()->end() ->scalarNode('ide')->defaultNull()->end() @@ -72,7 +72,7 @@ class Configuration implements ConfigurationInterface { $rootNode ->children() - ->arrayNode('form') + ->arrayNode('form')->setInfo('form configuration') ->canBeUnset() ->treatNullLike(array('enabled' => true)) ->treatTrueLike(array('enabled' => true)) @@ -97,7 +97,7 @@ class Configuration implements ConfigurationInterface { $rootNode ->children() - ->arrayNode('esi') + ->arrayNode('esi')->setInfo('esi configuration') ->canBeUnset() ->treatNullLike(array('enabled' => true)) ->treatTrueLike(array('enabled' => true)) @@ -113,7 +113,7 @@ class Configuration implements ConfigurationInterface { $rootNode ->children() - ->arrayNode('profiler') + ->arrayNode('profiler')->setInfo('profiler configuration') ->canBeUnset() ->children() ->booleanNode('only_exceptions')->defaultFalse()->end() @@ -141,7 +141,7 @@ class Configuration implements ConfigurationInterface { $rootNode ->children() - ->arrayNode('router') + ->arrayNode('router')->setInfo('router configuration') ->canBeUnset() ->children() ->scalarNode('resource')->isRequired()->end() @@ -158,7 +158,7 @@ class Configuration implements ConfigurationInterface { $rootNode ->children() - ->arrayNode('session') + ->arrayNode('session')->setInfo('session configuration') ->canBeUnset() ->children() ->booleanNode('auto_start')->defaultFalse()->end() @@ -200,7 +200,7 @@ class Configuration implements ConfigurationInterface $rootNode ->children() - ->arrayNode('templating') + ->arrayNode('templating')->setInfo('templating configuration') ->canBeUnset() ->children() ->scalarNode('assets_version')->defaultValue(null)->end() @@ -251,6 +251,7 @@ class Configuration implements ConfigurationInterface ->fixXmlConfig('engine') ->children() ->arrayNode('engines') + ->setExample(array('twig')) ->isRequired() ->requiresAtLeastOneElement() ->beforeNormalization() @@ -313,7 +314,7 @@ class Configuration implements ConfigurationInterface { $rootNode ->children() - ->arrayNode('translator') + ->arrayNode('translator')->setInfo('translator configuration') ->canBeUnset() ->treatNullLike(array('enabled' => true)) ->treatTrueLike(array('enabled' => true)) @@ -330,7 +331,7 @@ class Configuration implements ConfigurationInterface { $rootNode ->children() - ->arrayNode('validation') + ->arrayNode('validation')->setInfo('validation configuration') ->canBeUnset() ->treatNullLike(array('enabled' => true)) ->treatTrueLike(array('enabled' => true)) @@ -348,7 +349,7 @@ class Configuration implements ConfigurationInterface { $rootNode ->children() - ->arrayNode('annotations') + ->arrayNode('annotations')->setInfo('annotation configuration') ->addDefaultsIfNotSet() ->children() ->scalarNode('cache')->defaultValue('file')->end() From 2f8ad93db84660db44571f0182b4d3514112c741 Mon Sep 17 00:00:00 2001 From: kbond Date: Tue, 14 Jun 2011 13:19:42 -0400 Subject: [PATCH 4/8] [MonologBundle] added configuration info --- .../DependencyInjection/Configuration.php | 20 +++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/src/Symfony/Bundle/MonologBundle/DependencyInjection/Configuration.php b/src/Symfony/Bundle/MonologBundle/DependencyInjection/Configuration.php index 633fac9203..8462b23a75 100644 --- a/src/Symfony/Bundle/MonologBundle/DependencyInjection/Configuration.php +++ b/src/Symfony/Bundle/MonologBundle/DependencyInjection/Configuration.php @@ -107,6 +107,26 @@ class Configuration implements ConfigurationInterface ->ifTrue(function($v) { return isset($v['debug']); }) ->thenInvalid('The "debug" name cannot be used as it is reserved for the handler of the profiler') ->end() + ->setExample(array( + 'syslog' => array( + 'type' => 'stream', + 'path' => '/var/log/symfony.log', + 'level' => 'ERROR', + 'bubble' => 'false', + 'formatter' => 'my_formatter', + 'processors' => array('some_callable') + ), + 'main' => array( + 'type' => 'fingerscrossed', + 'action_level' => 'WARNING', + 'buffer_size' => 30, + 'handler' => 'custom', + ), + 'custom' => array( + 'type' => 'service', + 'id' => 'my_handler' + ) + )) ->end() ->end() ; From fa32885ea30ba1fe4d0d96aaad3dbd0e602e5b47 Mon Sep 17 00:00:00 2001 From: kbond Date: Tue, 14 Jun 2011 13:34:35 -0400 Subject: [PATCH 5/8] [SecurityBundle] added configuration info --- .../DependencyInjection/MainConfiguration.php | 26 ++++++++++++++++--- 1 file changed, 22 insertions(+), 4 deletions(-) diff --git a/src/Symfony/Bundle/SecurityBundle/DependencyInjection/MainConfiguration.php b/src/Symfony/Bundle/SecurityBundle/DependencyInjection/MainConfiguration.php index c1f99ac56a..3d5d3efb75 100644 --- a/src/Symfony/Bundle/SecurityBundle/DependencyInjection/MainConfiguration.php +++ b/src/Symfony/Bundle/SecurityBundle/DependencyInjection/MainConfiguration.php @@ -57,8 +57,8 @@ class MainConfiguration implements ConfigurationInterface $rootNode ->children() - ->scalarNode('access_denied_url')->defaultNull()->end() - ->scalarNode('session_fixation_strategy')->cannotBeEmpty()->defaultValue('migrate')->end() + ->scalarNode('access_denied_url')->defaultNull()->setExample('/foo/error403')->end() + ->scalarNode('session_fixation_strategy')->cannotBeEmpty()->setInfo('strategy can be: none, migrate, invalidate')->defaultValue('migrate')->end() ->booleanNode('hide_user_not_found')->defaultTrue()->end() ->booleanNode('always_authenticate_before_granting')->defaultFalse()->end() ->booleanNode('erase_credentials')->defaultTrue()->end() @@ -72,7 +72,7 @@ class MainConfiguration implements ConfigurationInterface ->end() ->end() ; - + $this->addAclSection($rootNode); $this->addEncodersSection($rootNode); $this->addProvidersSection($rootNode); @@ -89,7 +89,7 @@ class MainConfiguration implements ConfigurationInterface ->children() ->arrayNode('acl') ->children() - ->scalarNode('connection')->end() + ->scalarNode('connection')->setInfo('any name configured in doctrine.dbal section')->end() ->arrayNode('cache') ->addDefaultsIfNotSet() ->children() @@ -290,6 +290,16 @@ class MainConfiguration implements ConfigurationInterface ->fixXmlConfig('provider') ->children() ->arrayNode('providers') + ->setExample(array( + 'memory' => array( + 'name' => 'memory', + 'users' => array( + 'foo' => array('password' => 'foo', 'roles' => 'ROLE_USER'), + 'bar' => array('password' => 'bar', 'roles' => '[ROLE_USER, ROLE_ADMIN]') + ) + ), + 'entity' => array('entity' => array('class' => 'SecurityBundle:User', 'property' => 'username')) + )) ->disallowNewKeysInSubsequentConfigs() ->isRequired() ->requiresAtLeastOneElement() @@ -340,6 +350,14 @@ class MainConfiguration implements ConfigurationInterface ->fixXmlConfig('encoder') ->children() ->arrayNode('encoders') + ->setExample(array( + 'Acme\DemoBundle\Entity\User1' => 'sha512', + 'Acme\DemoBundle\Entity\User2' => array( + 'algorithm' => 'sha512', + 'encode_as_base64' => 'true', + 'iterations'=> 5000 + ) + )) ->requiresAtLeastOneElement() ->useAttributeAsKey('class') ->prototype('array') From df94282dabeffb28a1774388c1ad8b2b5de73165 Mon Sep 17 00:00:00 2001 From: kbond Date: Thu, 15 Sep 2011 10:46:01 -0400 Subject: [PATCH 6/8] [FrameworkBundle] removed unnecessary DebugCommand --- .../Command/ConfigDumpCommand.php | 2 +- .../Command/ContainerDebugCommand.php | 4 +- .../FrameworkBundle/Command/DebugCommand.php | 47 ------------------- 3 files changed, 3 insertions(+), 50 deletions(-) delete mode 100644 src/Symfony/Bundle/FrameworkBundle/Command/DebugCommand.php diff --git a/src/Symfony/Bundle/FrameworkBundle/Command/ConfigDumpCommand.php b/src/Symfony/Bundle/FrameworkBundle/Command/ConfigDumpCommand.php index c10cdd5a66..c9a69c8a07 100644 --- a/src/Symfony/Bundle/FrameworkBundle/Command/ConfigDumpCommand.php +++ b/src/Symfony/Bundle/FrameworkBundle/Command/ConfigDumpCommand.php @@ -27,7 +27,7 @@ use Symfony\Component\Config\Definition\BooleanNode; * * @author Kevin Bond */ -class ConfigDumpCommand extends DebugCommand +class ConfigDumpCommand extends ContainerDebugCommand { protected $output; diff --git a/src/Symfony/Bundle/FrameworkBundle/Command/ContainerDebugCommand.php b/src/Symfony/Bundle/FrameworkBundle/Command/ContainerDebugCommand.php index e252287d70..48d501526e 100644 --- a/src/Symfony/Bundle/FrameworkBundle/Command/ContainerDebugCommand.php +++ b/src/Symfony/Bundle/FrameworkBundle/Command/ContainerDebugCommand.php @@ -27,7 +27,7 @@ use Symfony\Component\Config\FileLocator; * * @author Ryan Weaver */ -class ContainerDebugCommand extends DebugCommand +class ContainerDebugCommand extends ContainerAwareCommand { /** * @var ContainerBuilder @@ -183,7 +183,7 @@ EOF * * @return ContainerBuilder */ - private function getContainerBuilder() + protected function getContainerBuilder() { if (!$this->getApplication()->getKernel()->isDebug()) { throw new \LogicException(sprintf('Debug information about the container is only available in debug mode.')); diff --git a/src/Symfony/Bundle/FrameworkBundle/Command/DebugCommand.php b/src/Symfony/Bundle/FrameworkBundle/Command/DebugCommand.php deleted file mode 100644 index 5bfc8b41ad..0000000000 --- a/src/Symfony/Bundle/FrameworkBundle/Command/DebugCommand.php +++ /dev/null @@ -1,47 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace Symfony\Bundle\FrameworkBundle\Command; - -use Symfony\Component\DependencyInjection\Loader\XmlFileLoader; -use Symfony\Component\Config\FileLocator; -use Symfony\Component\DependencyInjection\ContainerBuilder; - -/** - * Base command for debug tasks - * - * @author Kevin Bond - */ -abstract class DebugCommand extends ContainerAwareCommand -{ - /** - * Loads the ContainerBuilder from the cache. - * - * @return ContainerBuilder - */ - protected function getContainerBuilder() - { - if (!$this->getApplication()->getKernel()->isDebug()) { - throw new \LogicException(sprintf('Debug information about the container is only available in debug mode.')); - } - - if (!file_exists($cachedFile = $this->getContainer()->getParameter('debug.container.dump'))) { - throw new \LogicException(sprintf('Debug information about the container could not be found. Please clear the cache and try again.')); - } - - $container = new ContainerBuilder(); - - $loader = new XmlFileLoader($container, new FileLocator()); - $loader->load($cachedFile); - - return $container; - } -} From e97af0bac02bd1948feeab36924675d32b14f810 Mon Sep 17 00:00:00 2001 From: Kevin Bond Date: Tue, 24 Jan 2012 15:51:23 -0500 Subject: [PATCH 7/8] code fixes --- .../Command/ConfigDumpCommand.php | 10 ++----- .../DependencyInjection/Configuration.php | 27 ++++++++++++------- 2 files changed, 20 insertions(+), 17 deletions(-) diff --git a/src/Symfony/Bundle/FrameworkBundle/Command/ConfigDumpCommand.php b/src/Symfony/Bundle/FrameworkBundle/Command/ConfigDumpCommand.php index c9a69c8a07..be45676853 100644 --- a/src/Symfony/Bundle/FrameworkBundle/Command/ConfigDumpCommand.php +++ b/src/Symfony/Bundle/FrameworkBundle/Command/ConfigDumpCommand.php @@ -12,11 +12,8 @@ namespace Symfony\Bundle\FrameworkBundle\Command; use Symfony\Component\Console\Input\InputArgument; -use Symfony\Component\Console\Input\InputOption; use Symfony\Component\Console\Input\InputInterface; use Symfony\Component\Console\Output\OutputInterface; -use Symfony\Component\Console\Output\Output; -use Symfony\Component\HttpKernel\Bundle\Bundle; use Symfony\Component\Config\Definition\NodeInterface; use Symfony\Component\Config\Definition\ArrayNode; use Symfony\Component\Config\Definition\PrototypedArrayNode; @@ -86,7 +83,7 @@ EOF foreach ($kernel->getBundles() as $bundle) { $extension = $bundle->getContainerExtension(); - if ($extension && ($extension->getAlias() == $name)) { + if ($extension && $extension->getAlias() === $name) { break; } @@ -143,11 +140,8 @@ EOF if ($is_indexed) { $this->outputLine('- '.$val, $depth * 4); - } else { - $text = sprintf('%-20s %s', $key.':', $val); - $this->outputLine($text, $depth * 4); - + $this->outputLine(sprintf('%-20s %s', $key.':', $val), $depth * 4); } if (is_array($value)) { diff --git a/src/Symfony/Bundle/FrameworkBundle/DependencyInjection/Configuration.php b/src/Symfony/Bundle/FrameworkBundle/DependencyInjection/Configuration.php index b8cda65249..5195ff1c2f 100644 --- a/src/Symfony/Bundle/FrameworkBundle/DependencyInjection/Configuration.php +++ b/src/Symfony/Bundle/FrameworkBundle/DependencyInjection/Configuration.php @@ -72,7 +72,8 @@ class Configuration implements ConfigurationInterface { $rootNode ->children() - ->arrayNode('form')->setInfo('form configuration') + ->arrayNode('form') + ->setInfo('form configuration') ->canBeUnset() ->treatNullLike(array('enabled' => true)) ->treatTrueLike(array('enabled' => true)) @@ -97,7 +98,8 @@ class Configuration implements ConfigurationInterface { $rootNode ->children() - ->arrayNode('esi')->setInfo('esi configuration') + ->arrayNode('esi') + ->setInfo('esi configuration') ->canBeUnset() ->treatNullLike(array('enabled' => true)) ->treatTrueLike(array('enabled' => true)) @@ -113,7 +115,8 @@ class Configuration implements ConfigurationInterface { $rootNode ->children() - ->arrayNode('profiler')->setInfo('profiler configuration') + ->arrayNode('profiler') + ->setInfo('profiler configuration') ->canBeUnset() ->children() ->booleanNode('only_exceptions')->defaultFalse()->end() @@ -141,7 +144,8 @@ class Configuration implements ConfigurationInterface { $rootNode ->children() - ->arrayNode('router')->setInfo('router configuration') + ->arrayNode('router') + ->setInfo('router configuration') ->canBeUnset() ->children() ->scalarNode('resource')->isRequired()->end() @@ -158,7 +162,8 @@ class Configuration implements ConfigurationInterface { $rootNode ->children() - ->arrayNode('session')->setInfo('session configuration') + ->arrayNode('session') + ->setInfo('session configuration') ->canBeUnset() ->children() ->booleanNode('auto_start')->defaultFalse()->end() @@ -200,7 +205,8 @@ class Configuration implements ConfigurationInterface $rootNode ->children() - ->arrayNode('templating')->setInfo('templating configuration') + ->arrayNode('templating') + ->setInfo('templating configuration') ->canBeUnset() ->children() ->scalarNode('assets_version')->defaultValue(null)->end() @@ -314,7 +320,8 @@ class Configuration implements ConfigurationInterface { $rootNode ->children() - ->arrayNode('translator')->setInfo('translator configuration') + ->arrayNode('translator') + ->setInfo('translator configuration') ->canBeUnset() ->treatNullLike(array('enabled' => true)) ->treatTrueLike(array('enabled' => true)) @@ -331,7 +338,8 @@ class Configuration implements ConfigurationInterface { $rootNode ->children() - ->arrayNode('validation')->setInfo('validation configuration') + ->arrayNode('validation') + ->setInfo('validation configuration') ->canBeUnset() ->treatNullLike(array('enabled' => true)) ->treatTrueLike(array('enabled' => true)) @@ -349,7 +357,8 @@ class Configuration implements ConfigurationInterface { $rootNode ->children() - ->arrayNode('annotations')->setInfo('annotation configuration') + ->arrayNode('annotations') + ->setInfo('annotation configuration') ->addDefaultsIfNotSet() ->children() ->scalarNode('cache')->defaultValue('file')->end() From 4847d3ad35ef38ba661e65cfee2981a1d9501f15 Mon Sep 17 00:00:00 2001 From: kbond Date: Thu, 2 Feb 2012 11:47:41 -0500 Subject: [PATCH 8/8] renamed command --- ...nfigDumpCommand.php => ConfigDumpReferenceCommand.php} | 8 ++++---- .../DependencyInjection/MainConfiguration.php | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) rename src/Symfony/Bundle/FrameworkBundle/Command/{ConfigDumpCommand.php => ConfigDumpReferenceCommand.php} (97%) diff --git a/src/Symfony/Bundle/FrameworkBundle/Command/ConfigDumpCommand.php b/src/Symfony/Bundle/FrameworkBundle/Command/ConfigDumpReferenceCommand.php similarity index 97% rename from src/Symfony/Bundle/FrameworkBundle/Command/ConfigDumpCommand.php rename to src/Symfony/Bundle/FrameworkBundle/Command/ConfigDumpReferenceCommand.php index be45676853..3243f2ee45 100644 --- a/src/Symfony/Bundle/FrameworkBundle/Command/ConfigDumpCommand.php +++ b/src/Symfony/Bundle/FrameworkBundle/Command/ConfigDumpReferenceCommand.php @@ -24,7 +24,7 @@ use Symfony\Component\Config\Definition\BooleanNode; * * @author Kevin Bond */ -class ConfigDumpCommand extends ContainerDebugCommand +class ConfigDumpReferenceCommand extends ContainerDebugCommand { protected $output; @@ -37,7 +37,7 @@ class ConfigDumpCommand extends ContainerDebugCommand ->setDefinition(array( new InputArgument('name', InputArgument::REQUIRED, 'The Bundle or extension alias') )) - ->setName('config:dump') + ->setName('config:dump-reference') ->setDescription('Dumps default configuration for an extension.') ->setHelp(<<config:dump command dumps the default configuration for an extension/bundle. @@ -46,11 +46,11 @@ The extension alias or bundle name can be used: Example: - container:debug framework + %command.name% framework or - container:debug FrameworkBundle + %command.name% FrameworkBundle EOF ) diff --git a/src/Symfony/Bundle/SecurityBundle/DependencyInjection/MainConfiguration.php b/src/Symfony/Bundle/SecurityBundle/DependencyInjection/MainConfiguration.php index 3d5d3efb75..70065d8e17 100644 --- a/src/Symfony/Bundle/SecurityBundle/DependencyInjection/MainConfiguration.php +++ b/src/Symfony/Bundle/SecurityBundle/DependencyInjection/MainConfiguration.php @@ -72,7 +72,7 @@ class MainConfiguration implements ConfigurationInterface ->end() ->end() ; - + $this->addAclSection($rootNode); $this->addEncodersSection($rootNode); $this->addProvidersSection($rootNode);