Final Class Yiisoft\Queue\Command\RunCommand
| Inheritance | Yiisoft\Queue\Command\RunCommand » Symfony\Component\Console\Command\Command |
|---|
Public Methods
| Method | Description | Defined By |
|---|---|---|
| __construct() | Yiisoft\Queue\Command\RunCommand | |
| configure() | Yiisoft\Queue\Command\RunCommand |
Protected Methods
| Method | Description | Defined By |
|---|---|---|
| execute() | Yiisoft\Queue\Command\RunCommand |
Method Details
| public mixed __construct ( Yiisoft\Queue\Provider\QueueProviderInterface $queueProvider ) | ||
| $queueProvider | Yiisoft\Queue\Provider\QueueProviderInterface | |
public function __construct(
private readonly QueueProviderInterface $queueProvider,
) {
parent::__construct();
}
| public void configure ( ) |
public function configure(): void
{
$this->addArgument(
'queue',
InputArgument::OPTIONAL | InputArgument::IS_ARRAY,
'Queue name list to connect to.',
$this->queueProvider->getNames(),
)
->addOption(
'maximum',
'm',
InputOption::VALUE_REQUIRED,
'Maximum number of messages to process in each queue. Default is 0 (no limits).',
0,
)
->addUsage('[queue1 [queue2 [...]]] --maximum 100');
}
| protected integer execute ( \Symfony\Component\Console\Input\InputInterface $input, \Symfony\Component\Console\Output\OutputInterface $output ) | ||
| $input | \Symfony\Component\Console\Input\InputInterface | |
| $output | \Symfony\Component\Console\Output\OutputInterface | |
protected function execute(InputInterface $input, OutputInterface $output): int
{
/** @var string $queue */
foreach ($input->getArgument('queue') as $queue) {
$output->write("Processing queue $queue... ");
$count = $this->queueProvider
->get($queue)
->run((int) $input->getOption('maximum'));
$output->writeln("Messages processed: $count.");
}
return 0;
}
Signup or Login in order to comment.