[ Index ]

PHP Cross Reference of phpBB-3.2.11-deutsch

title

Body

[close]

/vendor/symfony/console/Command/ -> ListCommand.php (source)

   1  <?php
   2  
   3  /*
   4   * This file is part of the Symfony package.
   5   *
   6   * (c) Fabien Potencier <fabien@symfony.com>
   7   *
   8   * For the full copyright and license information, please view the LICENSE
   9   * file that was distributed with this source code.
  10   */
  11  
  12  namespace Symfony\Component\Console\Command;
  13  
  14  use Symfony\Component\Console\Helper\DescriptorHelper;
  15  use Symfony\Component\Console\Input\InputArgument;
  16  use Symfony\Component\Console\Input\InputDefinition;
  17  use Symfony\Component\Console\Input\InputInterface;
  18  use Symfony\Component\Console\Input\InputOption;
  19  use Symfony\Component\Console\Output\OutputInterface;
  20  
  21  /**
  22   * ListCommand displays the list of all available commands for the application.
  23   *
  24   * @author Fabien Potencier <fabien@symfony.com>
  25   */
  26  class ListCommand extends Command
  27  {
  28      /**
  29       * {@inheritdoc}
  30       */
  31      protected function configure()
  32      {
  33          $this
  34              ->setName('list')
  35              ->setDefinition($this->createDefinition())
  36              ->setDescription('Lists commands')
  37              ->setHelp(<<<'EOF'
  38  The <info>%command.name%</info> command lists all commands:
  39  
  40    <info>php %command.full_name%</info>
  41  
  42  You can also display the commands for a specific namespace:
  43  
  44    <info>php %command.full_name% test</info>
  45  
  46  You can also output the information in other formats by using the <comment>--format</comment> option:
  47  
  48    <info>php %command.full_name% --format=xml</info>
  49  
  50  It's also possible to get raw list of commands (useful for embedding command runner):
  51  
  52    <info>php %command.full_name% --raw</info>
  53  EOF
  54              )
  55          ;
  56      }
  57  
  58      /**
  59       * {@inheritdoc}
  60       */
  61      public function getNativeDefinition()
  62      {
  63          return $this->createDefinition();
  64      }
  65  
  66      /**
  67       * {@inheritdoc}
  68       */
  69      protected function execute(InputInterface $input, OutputInterface $output)
  70      {
  71          if ($input->getOption('xml')) {
  72              @trigger_error('The --xml option was deprecated in version 2.7 and will be removed in version 3.0. Use the --format option instead.', E_USER_DEPRECATED);
  73  
  74              $input->setOption('format', 'xml');
  75          }
  76  
  77          $helper = new DescriptorHelper();
  78          $helper->describe($output, $this->getApplication(), array(
  79              'format' => $input->getOption('format'),
  80              'raw_text' => $input->getOption('raw'),
  81              'namespace' => $input->getArgument('namespace'),
  82          ));
  83      }
  84  
  85      /**
  86       * {@inheritdoc}
  87       */
  88      private function createDefinition()
  89      {
  90          return new InputDefinition(array(
  91              new InputArgument('namespace', InputArgument::OPTIONAL, 'The namespace name'),
  92              new InputOption('xml', null, InputOption::VALUE_NONE, 'To output list as XML'),
  93              new InputOption('raw', null, InputOption::VALUE_NONE, 'To output raw command list'),
  94              new InputOption('format', null, InputOption::VALUE_REQUIRED, 'The output format (txt, xml, json, or md)', 'txt'),
  95          ));
  96      }
  97  }


Generated: Wed Nov 11 20:33:01 2020 Cross-referenced by PHPXref 0.7.1