/** * {@inheritdoc} */ public function setDefinition(Definition $definition) { $definition->addOption(new Option('daemon', Option::NONE))->setShortcut('d')->setDescription('Run in daemon mode')->end(); return parent::setDefinition($definition); }
/** * Constructor. * * @param ContainerBuilder $container */ public function __construct(ContainerBuilder $container) { $this->container = $container; parent::__construct(); }
/** * Build options list. * * @param AbstractConsole $console * * @return array */ private function buildOptions(AbstractConsole $console) { $options = $console->getDefinition()->getOptions(); $data = array(); foreach ($options as $option) { $shortcut = ' '; $required = ''; if (null !== ($short = $option->getShortcut())) { $shortcut = sprintf('-%s, ', $short); } if ($option->isRequired()) { $required = '=' . strtoupper($option->getName()); } $data[] = ' ' . sprintf('<style name="info">%s</style>', $shortcut . sprintf('--%s', $option->getName()) . $required); } return $data; }
/** * Write help. * * @param AbstractConsole $console * @param array $options */ public function writeHelp(AbstractConsole $console, array $options = array()) { $opt = array(); if (!empty($options)) { foreach ($options as $option => $arg) { if ('no-ansi' !== $option) { continue; } $option = sprintf('--%s', $option); if (!is_bool($arg)) { $option .= '=' . $arg; } $opt[] = $option; } } $help = $this->getConsole('help'); $input = new ArgvInput(array_merge(array(null, $console->getName()), $opt)); $help->run($input); }