CallQueuedListener
class CallQueuedListener implements ShouldQueue
Traits
Properties
| Job|null | $job | The underlying queue job instance. |
from InteractsWithQueue |
| bool|null | $viaOutbox | Whether to stage the job through the transactional outbox. |
from InteractsWithQueueOutbox |
| string|null | $outboxDatabase | The database connection that owns the staged job. |
from InteractsWithQueueOutbox |
| string|null | $connection | The name of the connection the job should be sent to. |
from Queueable |
| string|null | $queue | The name of the queue the job should be sent to. |
from Queueable |
| array|string|int|null | $messageGroup | The message group the job should be sent to. |
from Queueable |
| null|array|callable | $deduplicator | The deduplicator callback the job should use to generate the deduplication ID. |
from Queueable |
| string | $debounceOwner | The lock owner token for debounce supersession checks. |
from Queueable |
| string | $uniqueLockOwner | The owner of the unique job lock. |
from Queueable |
| array|DateInterval|DateTimeInterface|int|null | $delay | The number of seconds before the job should be made available. |
from Queueable |
| bool|null | $afterCommit | Indicates whether the job should be dispatched after the open parent database transactions have committed. |
from Queueable |
| array | $middleware | The middleware the job should be dispatched through. |
from Queueable |
| array | $chained | The jobs that should run if this job is successful. |
from Queueable |
| string|null | $chainConnection | The name of the connection the chain should be sent to. |
from Queueable |
| string|null | $chainQueue | The name of the queue the chain should be sent to. |
from Queueable |
| array|null | $chainCatchCallbacks | The callbacks to be executed on chain failure. |
from Queueable |
| class-string | $class | The listener class name. |
|
| string | $method | The listener method. |
|
| array | $data | The data to be passed to the listener. |
|
| int|null | $tries | The number of times the job may be attempted. |
|
| int|null | $maxExceptions | The maximum number of exceptions allowed, regardless of attempts. |
|
| array|int|null | $backoff | The number of seconds to wait before retrying a job that encountered an uncaught exception. |
|
| DateTimeInterface|int|null | $retryUntil | The timestamp indicating when the job should timeout. |
|
| int|null | $timeout | The number of seconds the job can run before timing out. |
|
| bool | $failOnTimeout | Indicates if the job should fail if the timeout is exceeded. |
|
| bool | $countCrashesAsExceptions | Indicates if worker crashes should count towards the maximum exceptions. |
|
| bool | $shouldBeEncrypted | Indicates if the job should be encrypted. |
|
| bool|null | $deleteWhenMissingModels | Indicates if the job should be deleted when models are missing. |
|
| bool | $shouldBeUnique | Indicates if the listener should be unique. |
|
| bool | $shouldBeUniqueUntilProcessing | Indicates if the listener should be unique until processing begins. |
|
| mixed | $uniqueId | The unique ID of the listener. |
|
| int|null | $uniqueFor | The number of seconds the unique lock should be maintained. |
|
| mixed | $debounceId | The debounce ID of the listener. |
Methods
Get the number of seconds until the given DateTime.
Get the "available at" UNIX timestamp.
If the given value is an interval, convert it to a DateTime instance.
Given a start time, format the total run time for human readability.
Release the job back into the queue after (n) seconds.
Indicate that queue interactions like fail, delete, and release should be faked.
Assert that the job was deleted from the queue.
Assert that the job was not deleted from the queue.
Assert that the job was manually failed with a specific exception.
Assert that the job was not manually failed.
Assert that the job was released back onto the queue.
Assert that the job was not released back onto the queue.
Dispatch the job through the transactional outbox.
Dispatch the job without the transactional outbox.
Stage the job on the given database connection.
Set the desired connection for the job.
Set the desired job deduplicator callback.
Set the desired connection for the chain.
Set the desired queue for the chain.
Set the desired delay in seconds for the job.
Indicate that the job should be dispatched after the open parent database transactions have committed.
Indicate that the job should not wait until database transactions have been committed before dispatching.
Specify the middleware the job should be dispatched through.
Prepend a job to the current chain so that it is run after the currently running job.
Assert that the job has the given chain of jobs attached to it.
Create a new job instance.
Determine if the listener should be unique.
Determine if the listener should be unique until processing begins.
Get the unique ID for the listener.
Get the number of seconds the unique lock should be maintained.
Get the cache store used to manage unique locks.
Get the debounce ID for the listener.
Get the cache store used to manage debounce ownership.
Set the job instance of the given class if necessary.
Get the display name for the queued job.
Prepare the instance for cloning.
Details
in
InteractsWithTime at line 17
protected int
secondsUntil(DateInterval|DateTimeInterface|int $delay)
Get the number of seconds until the given DateTime.
in
InteractsWithTime at line 29
protected int
availableAt(DateInterval|DateTimeInterface|int|null $delay = 0)
Get the "available at" UNIX timestamp.
in
InteractsWithTime at line 47
protected DateTimeInterface|int
parseDateInterval(DateInterval|DateTimeInterface|int|null $delay)
If the given value is an interval, convert it to a DateTime instance.
in
InteractsWithTime at line 63
protected int
currentTime()
Get the current system time as a UNIX timestamp.
in
InteractsWithTime at line 71
protected string
runTimeForHumans(float $startTime, float|null $endTime = null)
Given a start time, format the total run time for human readability.
in
InteractsWithQueue at line 28
int
attempts()
Get the number of times the job has been attempted.
in
InteractsWithQueue at line 36
void
delete()
Delete the job from the queue.
in
InteractsWithQueue at line 46
void
fail(string|Throwable|null $exception = null)
Fail the job from the queue.
in
InteractsWithQueue at line 60
void
release(DateInterval|DateTimeInterface|int $delay = 0)
Release the job back into the queue after (n) seconds.
in
InteractsWithQueue at line 74
InteractsWithQueue
withFakeQueueInteractions()
Indicate that queue interactions like fail, delete, and release should be faked.
in
InteractsWithQueue at line 86
InteractsWithQueue
assertDeleted()
Assert that the job was deleted from the queue.
in
InteractsWithQueue at line 103
InteractsWithQueue
assertNotDeleted()
Assert that the job was not deleted from the queue.
in
InteractsWithQueue at line 120
InteractsWithQueue
assertFailed()
Assert that the job was manually failed.
in
InteractsWithQueue at line 137
InteractsWithQueue
assertFailedWith(string|Throwable $exception)
Assert that the job was manually failed with a specific exception.
in
InteractsWithQueue at line 181
InteractsWithQueue
assertNotFailed()
Assert that the job was not manually failed.
in
InteractsWithQueue at line 198
InteractsWithQueue
assertReleased(DateInterval|DateTimeInterface|int|null $delay = null)
Assert that the job was released back onto the queue.
in
InteractsWithQueue at line 228
InteractsWithQueue
assertNotReleased()
Assert that the job was not released back onto the queue.
in
InteractsWithQueue at line 257
InteractsWithQueue
setJob(Job $job)
Set the base queue job instance.
in
InteractsWithQueueOutbox at line 29
InteractsWithQueueOutbox
viaOutbox()
Dispatch the job through the transactional outbox.
in
InteractsWithQueueOutbox at line 39
InteractsWithQueueOutbox
withoutOutbox()
Dispatch the job without the transactional outbox.
in
InteractsWithQueueOutbox at line 50
InteractsWithQueueOutbox
onOutboxDatabase(UnitEnum|string $connection)
Stage the job on the given database connection.
in
Queueable at line 103
Queueable
onConnection(UnitEnum|string|null $connection)
Set the desired connection for the job.
in
Queueable at line 117
Queueable
onQueue(UnitEnum|string|null $queue)
Set the desired queue for the job.
in
Queueable at line 133
Queueable
onGroup(array|UnitEnum|string|int|null $group)
Set the desired job message group.
This feature is only supported by some queues, such as Amazon SQS.
in
Queueable at line 147
Queueable
withDeduplicator(array|callable|null $deduplicator)
Set the desired job deduplicator callback.
This feature is only supported by some queues, such as Amazon SQS FIFO.
in
Queueable at line 167
Queueable
allOnConnection(UnitEnum|string|null $connection)
Set the desired connection for the chain.
in
Queueable at line 184
Queueable
allOnQueue(UnitEnum|string|null $queue)
Set the desired queue for the chain.
in
Queueable at line 201
Queueable
delay(array|DateInterval|DateTimeInterface|int|null $delay)
Set the desired delay in seconds for the job.
in
Queueable at line 225
Queueable
afterCommit()
Indicate that the job should be dispatched after the open parent database transactions have committed.
in
Queueable at line 237
Queueable
beforeCommit()
Indicate that the job should not wait until database transactions have been committed before dispatching.
in
Queueable at line 249
Queueable
through(array|object $middleware)
Specify the middleware the job should be dispatched through.
in
Queueable at line 261
Queueable
chain(array $chain)
Set the jobs that should run if this job is successful.
in
Queueable at line 275
Queueable
prependToChain(mixed $job)
Prepend a job to the current chain so that it is run after the currently running job.
in
Queueable at line 291
Queueable
appendToChain(mixed $job)
Append a job to the end of the current chain.
in
Queueable at line 307
protected string
serializeJob(mixed $job)
Serialize a job for queuing.
in
Queueable at line 325
void
dispatchNextJobInChain()
Dispatch the next job on the chain.
in
Queueable at line 352
void
invokeChainCatchCallbacks(Throwable|null $e)
Invoke all of the chain's failed job callbacks.
in
Queueable at line 362
void
assertHasChain(array $expectedChain)
Assert that the job has the given chain of jobs attached to it.
in
Queueable at line 384
void
assertDoesntHaveChain()
Assert that the job has no remaining chained jobs.
at line 116
__construct(string $class, string $method, array $data)
Create a new job instance.
at line 126
void
handle(Container $container)
Handle the queued job.
at line 139
bool
shouldBeUnique()
Determine if the listener should be unique.
at line 147
bool
shouldBeUniqueUntilProcessing()
Determine if the listener should be unique until processing begins.
at line 155
mixed
uniqueId()
Get the unique ID for the listener.
at line 163
int|null
uniqueFor()
Get the number of seconds the unique lock should be maintained.
at line 171
Repository|null
uniqueVia()
Get the cache store used to manage unique locks.
at line 185
mixed
debounceId()
Get the debounce ID for the listener.
at line 193
Repository|null
debounceVia()
Get the cache store used to manage debounce ownership.
at line 207
protected object
setJobInstanceIfNecessary(Job $job, object $instance)
Set the job instance of the given class if necessary.
at line 224
void
failed(Throwable|null $e)
Call the failed method on the job instance.
The event instance and the exception will be passed.
at line 241
string
displayName()
Get the display name for the queued job.
at line 249
void
__clone()
Prepare the instance for cloning.