UniqueBroadcastEvent
class UniqueBroadcastEvent extends BroadcastEvent implements ShouldBeUnique
Traits
Properties
| 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 |
| mixed | $event | The event instance. |
from BroadcastEvent |
| int|null | $tries | The number of times the job may be attempted. |
from BroadcastEvent |
| int|null | $timeout | The number of seconds the job can run before timing out. |
from BroadcastEvent |
| array|int|null | $backoff | The number of seconds to wait before retrying the job when encountering an uncaught exception. |
from BroadcastEvent |
| int|null | $maxExceptions | The maximum number of unhandled exceptions to allow before failing. |
from BroadcastEvent |
| bool | $deleteWhenMissingModels | Delete the job if its models no longer exist. |
from BroadcastEvent |
| string | $uniqueId | The unique lock identifier. |
|
| int | $uniqueFor | The number of seconds the unique lock should be maintained. |
Methods
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.
Get a configuration value from an attribute, falling back to a property.
Extract the value from an attribute instance.
Get an instance of the given attribute class from the target class or its parents.
Determine if a property declared on a child class overrides an inherited attribute.
Create a new event instance.
Get the channels for the given connection.
Get the payload for the given connection.
Resolve the cache implementation that should manage the event's uniqueness.
Details
in
Queueable at line 97
Queueable
onConnection(UnitEnum|string|null $connection)
Set the desired connection for the job.
in
Queueable at line 109
Queueable
onQueue(UnitEnum|string|null $queue)
Set the desired queue for the job.
in
Queueable at line 123
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 135
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 153
Queueable
allOnConnection(UnitEnum|string|null $connection)
Set the desired connection for the chain.
in
Queueable at line 168
Queueable
allOnQueue(UnitEnum|string|null $queue)
Set the desired queue for the chain.
in
Queueable at line 183
Queueable
delay(array|DateInterval|DateTimeInterface|int|null $delay)
Set the desired delay in seconds for the job.
in
Queueable at line 203
Queueable
afterCommit()
Indicate that the job should be dispatched after the open parent database transactions have committed.
in
Queueable at line 213
Queueable
beforeCommit()
Indicate that the job should not wait until database transactions have been committed before dispatching.
in
Queueable at line 223
Queueable
through(array|object $middleware)
Specify the middleware the job should be dispatched through.
in
Queueable at line 233
Queueable
chain(array $chain)
Set the jobs that should run if this job is successful.
in
Queueable at line 245
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 259
Queueable
appendToChain(mixed $job)
Append a job to the end of the current chain.
in
Queueable at line 275
protected string
serializeJob(mixed $job)
Serialize a job for queuing.
in
Queueable at line 293
void
dispatchNextJobInChain()
Dispatch the next job on the chain.
in
Queueable at line 316
void
invokeChainCatchCallbacks(Throwable|null $e)
Invoke all of the chain's failed job callbacks.
in
Queueable at line 326
void
assertHasChain(array $expectedChain)
Assert that the job has the given chain of jobs attached to it.
in
Queueable at line 348
void
assertDoesntHaveChain()
Assert that the job has no remaining chained jobs.
in
ReadsClassAttributes at line 17
protected mixed
getAttributeValue(object $target, string $attributeClass, string|null $property = null, mixed $default = null)
Get a configuration value from an attribute, falling back to a property.
in
ReadsClassAttributes at line 46
protected mixed
extractAttributeValue(object $instance)
Extract the value from an attribute instance.
in
ReadsClassAttributes at line 58
protected object|null
getAttributeInstance(object $target, string $attributeClass, ReflectionClass|null $declaringClass = null)
Get an instance of the given attribute class from the target class or its parents.
in
ReadsClassAttributes at line 74
protected bool
propertyOverridesAttribute(object $target, ReflectionClass $reflection, string|null $property, ReflectionClass $attributeDeclaringClass)
Determine if a property declared on a child class overrides an inherited attribute.
at line 26
__construct(mixed $event)
Create a new event instance.
in
BroadcastEvent at line 77
void
handle(Factory $manager)
Handle the queued job.
in
BroadcastEvent at line 107
protected array
getPayloadFromEvent(mixed $event)
Get the payload for the given event.
in
BroadcastEvent at line 129
protected mixed
formatProperty(mixed $value)
Format the given value for a property.
in
BroadcastEvent at line 141
protected array
getConnectionChannels(array $channels, string|null $connection)
Get the channels for the given connection.
in
BroadcastEvent at line 151
protected array
getConnectionPayload(array $payload, string|null $connection)
Get the payload for the given connection.
in
BroadcastEvent at line 169
array
middleware()
Get the middleware for the underlying event.
in
BroadcastEvent at line 181
void
failed(Throwable|null $e = null)
Handle a job failure.
in
BroadcastEvent at line 193
string
displayName()
Get the display name for the queued job.
in
BroadcastEvent at line 201
void
__clone()
Prepare the instance for cloning.
at line 46
Repository|null
uniqueVia()
Resolve the cache implementation that should manage the event's uniqueness.