class RedisQueue extends Queue implements Queue

Traits

Properties

protected Container $container

The IoC container instance.

from  Queue
protected Encrypter $encrypter

The encrypter implementation.

from  Queue
protected string $connectionName

The connection name for the queue.

from  Queue
protected Factory $redis

The Redis factory implementation.

protected string $connection

The connection name.

protected string $default

The name of the default queue.

protected int|null $retryAfter

The expiration time of a job.

Methods

int
secondsUntil(DateTimeInterface $delay)

Get the number of seconds until the given DateTime.

int
availableAt(DateTimeInterface|int $delay = 0)

Get the "available at" UNIX timestamp.

int
currentTime()

Get the current system time as a UNIX timestamp.

mixed
pushOn(string $queue, string $job, mixed $data = '')

Push a new job onto the queue.

from  Queue
mixed
laterOn(string $queue, DateTime|int $delay, string $job, mixed $data = '')

Push a new job onto the queue after a delay.

from  Queue
mixed
bulk(array $jobs, mixed $data = '', string $queue = null)

Push an array of jobs onto the queue.

from  Queue
string
createPayload(string $job, mixed $data = '', string $queue = null)

Create a payload string from the given job and data.

from  Queue
array
createPayloadArray(string $job, mixed $data = '', string $queue = null)

Create a payload string from the given job and data.

array
createObjectPayload(mixed $job)

Create a payload for an object-based queue handler.

from  Queue
string
getDisplayName(mixed $job)

Get the display name for the given job.

from  Queue
array
createStringPayload(string $job, mixed $data)

Create a typical, string based queue payload array.

from  Queue
string
getConnectionName()

Get the connection name for the queue.

from  Queue
$this
setConnectionName(string $name)

Set the connection name for the queue.

from  Queue
void
setContainer(Container $container)

Set the IoC container instance.

from  Queue
void
__construct(Factory $redis, string $default = 'default', string $connection = null, int $retryAfter = 60)

Create a new Redis queue instance.

int
size(string $queue = null)

Get the size of the queue.

mixed
push(string $job, mixed $data = '', string $queue = null)

Push a new job onto the queue.

mixed
pushRaw(string $payload, string $queue = null, array $options = [])

Push a raw payload onto the queue.

mixed
later(DateTime|int $delay, string $job, mixed $data = '', string $queue = null)

Push a new job onto the queue after a delay.

mixed
laterRaw(DateTime|int $delay, string $payload, string $queue = null)

Push a raw job onto the queue after a delay.

Job|null
pop(string $queue = null)

Pop the next job off of the queue.

void
migrate(string $queue)

Migrate any delayed or expired jobs onto the primary queue.

array
migrateExpiredJobs(string $from, string $to)

Migrate the delayed jobs that are ready to the regular queue.

array
retrieveNextJob(string $queue)

Retrieve the next job from the queue.

void
deleteReserved(string $queue, RedisJob $job)

Delete a reserved job from the queue.

void
deleteAndRelease(string $queue, RedisJob $job, int $delay)

Delete a reserved job from the reserved queue and release it.

string
getRandomId()

Get a random ID string.

string
getQueue(string|null $queue)

Get the queue or return the default.

ClientInterface
getConnection()

Get the connection for the queue.

getRedis()

Get the underlying Redis instance.

Details

in InteractsWithTime at line 16
protected int secondsUntil(DateTimeInterface $delay)

Get the number of seconds until the given DateTime.

Parameters

DateTimeInterface $delay

Return Value

int

in InteractsWithTime at line 29
protected int availableAt(DateTimeInterface|int $delay = 0)

Get the "available at" UNIX timestamp.

Parameters

DateTimeInterface|int $delay

Return Value

int

in InteractsWithTime at line 41
protected int currentTime()

Get the current system time as a UNIX timestamp.

Return Value

int

in Queue at line 40
mixed pushOn(string $queue, string $job, mixed $data = '')

Push a new job onto the queue.

Parameters

string $queue
string $job
mixed $data

Return Value

mixed

in Queue at line 54
mixed laterOn(string $queue, DateTime|int $delay, string $job, mixed $data = '')

Push a new job onto the queue after a delay.

Parameters

string $queue
DateTime|int $delay
string $job
mixed $data

Return Value

mixed

in Queue at line 67
mixed bulk(array $jobs, mixed $data = '', string $queue = null)

Push an array of jobs onto the queue.

Parameters

array $jobs
mixed $data
string $queue

Return Value

mixed

in Queue at line 84
protected string createPayload(string $job, mixed $data = '', string $queue = null)

Create a payload string from the given job and data.

Parameters

string $job
mixed $data
string $queue

Return Value

string

Exceptions

InvalidPayloadException

at line 140
protected array createPayloadArray(string $job, mixed $data = '', string $queue = null)

Create a payload string from the given job and data.

Parameters

string $job
mixed $data
string $queue

Return Value

array

in Queue at line 118
protected array createObjectPayload(mixed $job)

Create a payload for an object-based queue handler.

Parameters

mixed $job

Return Value

array

in Queue at line 138
protected string getDisplayName(mixed $job)

Get the display name for the given job.

Parameters

mixed $job

Return Value

string

in Queue at line 151
protected array createStringPayload(string $job, mixed $data)

Create a typical, string based queue payload array.

Parameters

string $job
mixed $data

Return Value

array

in Queue at line 165
string getConnectionName()

Get the connection name for the queue.

Return Value

string

in Queue at line 176
$this setConnectionName(string $name)

Set the connection name for the queue.

Parameters

string $name

Return Value

$this

in Queue at line 189
void setContainer(Container $container)

Set the IoC container instance.

Parameters

Container $container

Return Value

void

at line 50
void __construct(Factory $redis, string $default = 'default', string $connection = null, int $retryAfter = 60)

Create a new Redis queue instance.

Parameters

Factory $redis
string $default
string $connection
int $retryAfter

Return Value

void

at line 64
int size(string $queue = null)

Get the size of the queue.

Parameters

string $queue

Return Value

int

at line 81
mixed push(string $job, mixed $data = '', string $queue = null)

Push a new job onto the queue.

Parameters

string $job
mixed $data
string $queue

Return Value

mixed

at line 94
mixed pushRaw(string $payload, string $queue = null, array $options = [])

Push a raw payload onto the queue.

Parameters

string $payload
string $queue
array $options

Return Value

mixed

at line 110
mixed later(DateTime|int $delay, string $job, mixed $data = '', string $queue = null)

Push a new job onto the queue after a delay.

Parameters

DateTime|int $delay
string $job
mixed $data
string $queue

Return Value

mixed

at line 123
protected mixed laterRaw(DateTime|int $delay, string $payload, string $queue = null)

Push a raw job onto the queue after a delay.

Parameters

DateTime|int $delay
string $payload
string $queue

Return Value

mixed

at line 154
Job|null pop(string $queue = null)

Pop the next job off of the queue.

Parameters

string $queue

Return Value

Job|null

at line 174
protected void migrate(string $queue)

Migrate any delayed or expired jobs onto the primary queue.

Parameters

string $queue

Return Value

void

at line 190
array migrateExpiredJobs(string $from, string $to)

Migrate the delayed jobs that are ready to the regular queue.

Parameters

string $from
string $to

Return Value

array

at line 203
protected array retrieveNextJob(string $queue)

Retrieve the next job from the queue.

Parameters

string $queue

Return Value

array

at line 218
void deleteReserved(string $queue, RedisJob $job)

Delete a reserved job from the queue.

Parameters

string $queue
RedisJob $job

Return Value

void

at line 231
void deleteAndRelease(string $queue, RedisJob $job, int $delay)

Delete a reserved job from the reserved queue and release it.

Parameters

string $queue
RedisJob $job
int $delay

Return Value

void

at line 246
protected string getRandomId()

Get a random ID string.

Return Value

string

at line 257
protected string getQueue(string|null $queue)

Get the queue or return the default.

Parameters

string|null $queue

Return Value

string

at line 267
protected ClientInterface getConnection()

Get the connection for the queue.

Return Value

ClientInterface

at line 277
Factory getRedis()

Get the underlying Redis instance.

Return Value

Factory