/** * @param Console\Input\InputInterface $input * @param Console\Output\OutputInterface $output * @return int|null|void */ protected function execute(Console\Input\InputInterface $input, Console\Output\OutputInterface $output) { $table = $this->getTableHelper(); $output->writeln('Queues:'); $queues = $this->qm->listQueues(); $table->setHeaders(['queue', 'message count']); foreach ($queues as $queueName) { $messagesCount = count($this->qm->listQueueMessages($queueName)); $table->addRow([$queueName, $messagesCount]); } $table->render($output); }
/** * @param Console\Input\InputInterface $input * @param Console\Output\OutputInterface $output * @return int|null|void */ protected function execute(Console\Input\InputInterface $input, Console\Output\OutputInterface $output) { $queue = $input->getArgument('queue'); $pretty = $input->getOption('pretty'); if ($queue === NULL) { $queues = $this->qm->listQueues(); $dialog = $this->getDialogHelper(); $selection = $dialog->select($output, 'Please select a queue', $queues, $default = NULL, $attempts = FALSE, 'Value "%s" is invalid', $multi = FALSE); $queue = $queues[$selection]; } $messages = $this->qm->listQueueMessages($queue); $output->writeln(sprintf('<info>%d</info> messages in queue <info>%s</info>', count($messages), $queue)); foreach ($messages as $message) { if ($pretty) { $output->writeln($this->format(json_decode($message, $asArray = TRUE))); $output->writeln(''); } else { $output->writeln($message); } } }