abstract class Queue (View source)

Traits

Properties

protected Container $container

The IoC container instance.

protected string $connectionName

The connection name for the queue.

protected bool $dispatchAfterCommit

Indicates that jobs should be dispatched after all database transactions have committed.

static protected callable[] $createPayloadCallbacks

The create payload callbacks.

Methods

int
secondsUntil(DateTimeInterface|DateInterval|int $delay)

Get the number of seconds until the given DateTime.

int
availableAt(DateTimeInterface|DateInterval|int $delay = 0)

Get the "available at" UNIX timestamp.

parseDateInterval(DateTimeInterface|DateInterval|int $delay)

If the given value is an interval, convert it to a DateTime instance.

int
currentTime()

Get the current system time as a UNIX timestamp.

string
runTimeForHumans(float $startTime, float $endTime = null)

Given a start time, format the total run time for human readability.

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

Push a new job onto the queue.

mixed
laterOn(string $queue, DateTimeInterface|DateInterval|int $delay, string $job, mixed $data = '')

Push a new job onto a specific queue after (n) seconds.

void
bulk(array $jobs, mixed $data = '', string|null $queue = null)

Push an array of jobs onto the queue.

string
createPayload(Closure|string|object $job, string $queue, mixed $data = '')

Create a payload string from the given job and data.

array
createPayloadArray(string|object $job, string $queue, mixed $data = '')

Create a payload array from the given job and data.

array
createObjectPayload(object $job, string $queue)

Create a payload for an object-based queue handler.

string
getDisplayName(object $job)

Get the display name for the given job.

mixed
getJobTries(mixed $job)

Get the maximum number of attempts for an object-based queue handler.

mixed
getJobBackoff(mixed $job)

Get the backoff for an object-based queue handler.

mixed
getJobExpiration(mixed $job)

Get the expiration timestamp for an object-based queue handler.

bool
jobShouldBeEncrypted(object $job)

Determine if the job should be encrypted.

array
createStringPayload(string $job, string $queue, mixed $data)

Create a typical, string based queue payload array.

static void
createPayloadUsing(callable|null $callback)

Register a callback to be executed when creating job payloads.

array
withCreatePayloadHooks(string $queue, array $payload)

Create the given payload using any registered payload hooks.

mixed
enqueueUsing(Closure|string|object $job, string $payload, string|null $queue, DateTimeInterface|DateInterval|int|null $delay, callable $callback)

Enqueue a job using the given callback.

bool
shouldDispatchAfterCommit(Closure|string|object $job)

Determine if the job should be dispatched after all database transactions have committed.

void
raiseJobQueueingEvent(string $queue, Closure|string|object $job, string $payload, DateTimeInterface|DateInterval|int|null $delay)

Raise the job queueing event.

void
raiseJobQueuedEvent(string|null $queue, string|int|null $jobId, Closure|string|object $job, string $payload, DateTimeInterface|DateInterval|int|null $delay)

Raise the job queued event.

string
getConnectionName()

Get the connection name for the queue.

$this
setConnectionName(string $name)

Set the connection name for the queue.

getContainer()

Get the container instance being used by the connection.

void
setContainer(Container $container)

Set the IoC container instance.

Details

protected int secondsUntil(DateTimeInterface|DateInterval|int $delay)

Get the number of seconds until the given DateTime.

Parameters

DateTimeInterface|DateInterval|int $delay

Return Value

int

protected int availableAt(DateTimeInterface|DateInterval|int $delay = 0)

Get the "available at" UNIX timestamp.

Parameters

DateTimeInterface|DateInterval|int $delay

Return Value

int

protected DateTimeInterface|int parseDateInterval(DateTimeInterface|DateInterval|int $delay)

If the given value is an interval, convert it to a DateTime instance.

Parameters

DateTimeInterface|DateInterval|int $delay

Return Value

DateTimeInterface|int

protected int currentTime()

Get the current system time as a UNIX timestamp.

Return Value

int

protected string runTimeForHumans(float $startTime, float $endTime = null)

Given a start time, format the total run time for human readability.

Parameters

float $startTime
float $endTime

Return Value

string

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

mixed laterOn(string $queue, DateTimeInterface|DateInterval|int $delay, string $job, mixed $data = '')

Push a new job onto a specific queue after (n) seconds.

Parameters

string $queue
DateTimeInterface|DateInterval|int $delay
string $job
mixed $data

Return Value

mixed

void bulk(array $jobs, mixed $data = '', string|null $queue = null)

Push an array of jobs onto the queue.

Parameters

array $jobs
mixed $data
string|null $queue

Return Value

void

protected string createPayload(Closure|string|object $job, string $queue, mixed $data = '')

Create a payload string from the given job and data.

Parameters

Closure|string|object $job
string $queue
mixed $data

Return Value

string

Exceptions

InvalidPayloadException

protected array createPayloadArray(string|object $job, string $queue, mixed $data = '')

Create a payload array from the given job and data.

Parameters

string|object $job
string $queue
mixed $data

Return Value

array

protected array createObjectPayload(object $job, string $queue)

Create a payload for an object-based queue handler.

Parameters

object $job
string $queue

Return Value

array

protected string getDisplayName(object $job)

Get the display name for the given job.

Parameters

object $job

Return Value

string

mixed getJobTries(mixed $job)

Get the maximum number of attempts for an object-based queue handler.

Parameters

mixed $job

Return Value

mixed

mixed getJobBackoff(mixed $job)

Get the backoff for an object-based queue handler.

Parameters

mixed $job

Return Value

mixed

mixed getJobExpiration(mixed $job)

Get the expiration timestamp for an object-based queue handler.

Parameters

mixed $job

Return Value

mixed

protected bool jobShouldBeEncrypted(object $job)

Determine if the job should be encrypted.

Parameters

object $job

Return Value

bool

protected array createStringPayload(string $job, string $queue, mixed $data)

Create a typical, string based queue payload array.

Parameters

string $job
string $queue
mixed $data

Return Value

array

static void createPayloadUsing(callable|null $callback)

Register a callback to be executed when creating job payloads.

Parameters

callable|null $callback

Return Value

void

protected array withCreatePayloadHooks(string $queue, array $payload)

Create the given payload using any registered payload hooks.

Parameters

string $queue
array $payload

Return Value

array

protected mixed enqueueUsing(Closure|string|object $job, string $payload, string|null $queue, DateTimeInterface|DateInterval|int|null $delay, callable $callback)

Enqueue a job using the given callback.

Parameters

Closure|string|object $job
string $payload
string|null $queue
DateTimeInterface|DateInterval|int|null $delay
callable $callback

Return Value

mixed

protected bool shouldDispatchAfterCommit(Closure|string|object $job)

Determine if the job should be dispatched after all database transactions have committed.

Parameters

Closure|string|object $job

Return Value

bool

protected void raiseJobQueueingEvent(string $queue, Closure|string|object $job, string $payload, DateTimeInterface|DateInterval|int|null $delay)

Raise the job queueing event.

Parameters

string $queue
Closure|string|object $job
string $payload
DateTimeInterface|DateInterval|int|null $delay

Return Value

void

protected void raiseJobQueuedEvent(string|null $queue, string|int|null $jobId, Closure|string|object $job, string $payload, DateTimeInterface|DateInterval|int|null $delay)

Raise the job queued event.

Parameters

string|null $queue
string|int|null $jobId
Closure|string|object $job
string $payload
DateTimeInterface|DateInterval|int|null $delay

Return Value

void

string getConnectionName()

Get the connection name for the queue.

Return Value

string

$this setConnectionName(string $name)

Set the connection name for the queue.

Parameters

string $name

Return Value

$this

Container getContainer()

Get the container instance being used by the connection.

Return Value

Container

void setContainer(Container $container)

Set the IoC container instance.

Parameters

Container $container

Return Value

void

Laravel Cloud is the best place to deploy Laravel, Nuxt, Express, Hono, Node.js, Bun, Go, Flask, Python, and more, with dedicated infrastructure available on AWS through Laravel Private Cloud.