コード例 #1
0
ファイル: Alias.php プロジェクト: nickschuch/tl
 /**
  * {@inheritdoc}
  */
 protected function execute(InputInterface $input, OutputInterface $output)
 {
     if ($input->getOption('list')) {
         $table = new Table($output);
         $table->setHeaders(['Alias', 'Issue number']);
         $list = $this->repository->listAliases();
         $rows = [];
         foreach ($list as $alias) {
             $rows[] = [$alias->alias, $alias->tid];
         }
         $table->setRows($rows);
         $table->render();
         return;
     }
     $alias = $input->getArgument('alias');
     $tid = $input->getArgument('ticket_id');
     if ($input->getOption('delete')) {
         if ($this->repository->removeAlias($tid, $alias)) {
             $output->writeln('Removed alias');
         } else {
             $output->writeln('<error>Unable to delete alias</error>');
         }
     } else {
         if (!$alias) {
             $output->writeln('<error>Missing alias</error>');
             return;
         }
         if (!$tid) {
             $output->writeln('<error>Missing ticket number</error>');
             return;
         }
         if ($this->repository->addAlias($tid, $alias)) {
             $output->writeln('Created new alias');
         } else {
             $output->writeln('<error>Unable to create alias</error>');
         }
     }
 }