Cronario\Queue::kickJob PHP Method

kickJob() public method

public kickJob ( $id ) : boolean
$id
return boolean
    public function kickJob($id)
    {
        $payload = $this->getPayload($id);
        if ($payload[self::JOB_PAYLOAD_STATE] !== self::STATE_BURIED) {
            throw new QueueException(' Cannot kick state unsupported!' . $payload[self::JOB_PAYLOAD_STATE]);
        }
        $keyReady = $this->getKeyReady($payload[self::JOB_PAYLOAD_QUEUE]);
        $keyBuried = $this->getKeyBuried($payload[self::JOB_PAYLOAD_QUEUE]);
        $redisJobNamespace = $this->getRedisJobNamespace();
        $result = $this->getRedis()->transaction(function ($tx) use($id, $payload, $keyBuried, $keyReady, $redisJobNamespace) {
            /** @var $tx \Predis\Client */
            $tx->zrem($keyBuried, $id);
            $payload = self::buildPayload($payload[self::JOB_PAYLOAD_QUEUE], self::STATE_READY);
            $tx->hset($redisJobNamespace, $id, $payload);
            $tx->rpush($keyReady, $id);
        });
        return !in_array(false, $result);
    }