[FrameworkBundle] fixed container:debug and router:debug commands

This commit is contained in:
Fabien Potencier 2013-10-02 16:03:04 +02:00
parent 5bd18c01a3
commit d997dfa556
4 changed files with 21 additions and 13 deletions

View File

@ -46,7 +46,7 @@ class ContainerDebugCommand extends ContainerAwareCommand
new InputOption('tags', null, InputOption::VALUE_NONE, 'Displays tagged services for an application'), new InputOption('tags', null, InputOption::VALUE_NONE, 'Displays tagged services for an application'),
new InputOption('parameter', null, InputOption::VALUE_REQUIRED, 'Displays a specific parameter for an application'), new InputOption('parameter', null, InputOption::VALUE_REQUIRED, 'Displays a specific parameter for an application'),
new InputOption('parameters', null, InputOption::VALUE_NONE, 'Displays parameters for an application'), new InputOption('parameters', null, InputOption::VALUE_NONE, 'Displays parameters for an application'),
new InputOption('format', null, InputOption::VALUE_REQUIRED, 'To output description in other formats'), new InputOption('format', null, InputOption::VALUE_REQUIRED, 'To output description in other formats', 'txt'),
new InputOption('raw', null, InputOption::VALUE_NONE, 'To output raw description'), new InputOption('raw', null, InputOption::VALUE_NONE, 'To output raw description'),
)) ))
->setDescription('Displays current services for an application') ->setDescription('Displays current services for an application')
@ -114,7 +114,9 @@ EOF
} }
$helper = new DescriptorHelper(); $helper = new DescriptorHelper();
$helper->describe($output, $object, $input->getOption('format'), $input->getOption('raw'), $options); $options['format'] = $input->getOption('format');
$options['raw_text'] = $input->getOption('raw');
$helper->describe($output, $object, $options);
} }
/** /**

View File

@ -52,7 +52,7 @@ class RouterDebugCommand extends ContainerAwareCommand
->setDefinition(array( ->setDefinition(array(
new InputArgument('name', InputArgument::OPTIONAL, 'A route name'), new InputArgument('name', InputArgument::OPTIONAL, 'A route name'),
new InputOption('show-controllers', null, InputOption::VALUE_NONE, 'Show assigned controllers in overview'), new InputOption('show-controllers', null, InputOption::VALUE_NONE, 'Show assigned controllers in overview'),
new InputOption('format', null, InputOption::VALUE_REQUIRED, 'To output route(s) in other formats'), new InputOption('format', null, InputOption::VALUE_REQUIRED, 'To output route(s) in other formats', 'txt'),
new InputOption('raw', null, InputOption::VALUE_NONE, 'To output raw route(s)'), new InputOption('raw', null, InputOption::VALUE_NONE, 'To output raw route(s)'),
)) ))
->setDescription('Displays current routes for an application') ->setDescription('Displays current routes for an application')
@ -80,7 +80,11 @@ EOF
if (!$route) { if (!$route) {
throw new \InvalidArgumentException(sprintf('The route "%s" does not exist.', $name)); throw new \InvalidArgumentException(sprintf('The route "%s" does not exist.', $name));
} }
$helper->describe($output, $route, $input->getOption('format'), $input->getOption('raw'), array('name' => $name)); $helper->describe($output, $route, array(
'format' => $input->getOption('format'),
'raw_text' => $input->getOption('raw'),
'name' => $name,
));
} else { } else {
$routes = $this->getContainer()->get('router')->getRouteCollection(); $routes = $this->getContainer()->get('router')->getRouteCollection();
$helper->describe($output, $routes, array( $helper->describe($output, $routes, array(

View File

@ -28,6 +28,7 @@ class MarkdownDescriptor extends Descriptor
} }
$this->describeRoute($route, array('name' => $name)); $this->describeRoute($route, array('name' => $name));
} }
$this->write("\n");
} }
/** /**
@ -49,8 +50,9 @@ class MarkdownDescriptor extends Descriptor
."\n".'- Path-Regex: '.$route->compile()->getRegex(); ."\n".'- Path-Regex: '.$route->compile()->getRegex();
$this->write(isset($options['name']) $this->write(isset($options['name'])
? $options['name']."\n".str_repeat('-', strlen($options['name']))."\n".$output ? $options['name']."\n".str_repeat('-', strlen($options['name']))."\n\n".$output
: $output); : $output);
$this->write("\n");
} }
/** /**
@ -133,17 +135,17 @@ class MarkdownDescriptor extends Descriptor
} }
if (!empty($services['definitions'])) { if (!empty($services['definitions'])) {
$this->write("\n\nDefinitions\n-----------"); $this->write("\n\nDefinitions\n-----------\n");
foreach ($services['definitions'] as $id => $service) { foreach ($services['definitions'] as $id => $service) {
$this->write("\n\n"); $this->write("\n");
$this->describeContainerDefinition($service, array('id' => $id)); $this->describeContainerDefinition($service, array('id' => $id));
} }
} }
if (!empty($services['aliases'])) { if (!empty($services['aliases'])) {
$this->write("\n\nAliases\n-------"); $this->write("\n\nAliases\n-------\n");
foreach ($services['aliases'] as $id => $service) { foreach ($services['aliases'] as $id => $service) {
$this->write("\n\n"); $this->write("\n");
$this->describeContainerAlias($service, array('id' => $id)); $this->describeContainerAlias($service, array('id' => $id));
} }
} }
@ -182,7 +184,7 @@ class MarkdownDescriptor extends Descriptor
} }
} }
$this->write(isset($options['id']) ? sprintf("**`%s`:**\n%s", $options['id'], $output) : $output); $this->write(isset($options['id']) ? sprintf("%s\n%s\n\n%s\n", $options['id'], str_repeat('~', strlen($options['id'])), $output) : $output);
} }
/** /**
@ -193,7 +195,7 @@ class MarkdownDescriptor extends Descriptor
$output = '- Service: `'.$alias.'`' $output = '- Service: `'.$alias.'`'
."\n".'- Public: '.($alias->isPublic() ? 'yes' : 'no'); ."\n".'- Public: '.($alias->isPublic() ? 'yes' : 'no');
$this->write(isset($options['id']) ? sprintf("**`%s`:**\n%s", $options['id'], $output) : $output); $this->write(isset($options['id']) ? sprintf("%s\n%s\n\n%s\n", $options['id'], str_repeat('~', strlen($options['id'])), $output) : $output);
} }
private function formatRouterConfig(array $array) private function formatRouterConfig(array $array)

View File

@ -84,7 +84,7 @@ class TextDescriptor extends Descriptor
$description[] = '<comment>Host-Regex</comment> '.$route->compile()->getHostRegex(); $description[] = '<comment>Host-Regex</comment> '.$route->compile()->getHostRegex();
} }
$this->writeText(implode("\n", $description), $options); $this->writeText(implode("\n", $description)."\n", $options);
} }
/** /**
@ -256,7 +256,7 @@ class TextDescriptor extends Descriptor
$description[] = sprintf('<comment>Synthetic</comment> %s', $definition->isSynthetic() ? 'yes' : 'no'); $description[] = sprintf('<comment>Synthetic</comment> %s', $definition->isSynthetic() ? 'yes' : 'no');
$description[] = sprintf('<comment>Required File</comment> %s', $definition->getFile() ? $definition->getFile() : '-'); $description[] = sprintf('<comment>Required File</comment> %s', $definition->getFile() ? $definition->getFile() : '-');
$this->writeText(implode("\n", $description), $options); $this->writeText(implode("\n", $description)."\n", $options);
} }
/** /**