/**
  * Execute the console command.
  *
  * @return void
  */
 public function fire()
 {
     $this->pluginEnabled();
     $queue = $this->option('queue');
     $connection = $this->argument('connection');
     $flag = $this->cache->get($this->flagHelper->getFlagName($connection, $queue), 0);
     if ($this->flagIsDown($flag)) {
         $killedWorkers = $this->kuduHelper->killQueueWorkers($connection, $queue);
         if ($killedWorkers === 0) {
             throw new QueueProcessesNotKilledException('The "' . $this->flagHelper->getQueueName($queue) . '" queue on connection "' . $this->flagHelper->getConnectionName($connection) . '" is unresponsive, but the process could not be terminated.');
         }
         $infoString = 'The "' . $this->flagHelper->getQueueName($queue) . '" queue on connection "' . $this->flagHelper->getConnectionName($connection) . '" was unresponsive. ' . $killedWorkers . ' process';
         if ($killedWorkers > 1) {
             $infoString .= 'es were';
         } else {
             $infoString .= ' was';
         }
         $infoString .= ' terminated.';
         throw new UnresponsiveQueueWorkerException($infoString);
     }
 }
 /**
  * Execute the job.
  *
  * @return void
  */
 public function handle(Cache $cache, FlagHelper $flag)
 {
     $cache->forever($flag->getFlagName($this->connectionName, $this->queueName), time());
 }