class NotificationSending

Traits

Properties

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

Methods

viaOutbox()

Dispatch the job through the transactional outbox.

withoutOutbox()

Dispatch the job without the transactional outbox.

onOutboxDatabase(UnitEnum|string $connection)

Stage the job on the given database connection.

onConnection(UnitEnum|string|null $connection)

Set the desired connection for the job.

onQueue(UnitEnum|string|null $queue)

Set the desired queue for the job.

onGroup(array|UnitEnum|string|int|null $group)

Set the desired job message group.

withDeduplicator(array|callable|null $deduplicator)

Set the desired job deduplicator callback.

allOnConnection(UnitEnum|string|null $connection)

Set the desired connection for the chain.

allOnQueue(UnitEnum|string|null $queue)

Set the desired queue for the chain.

delay(array|DateInterval|DateTimeInterface|int|null $delay)

Set the desired delay in seconds for the job.

withoutDelay()

Set the delay for the job to zero seconds.

afterCommit()

Indicate that the job should be dispatched after the open parent database transactions have committed.

beforeCommit()

Indicate that the job should not wait until database transactions have been committed before dispatching.

through(array|object $middleware)

Specify the middleware the job should be dispatched through.

chain(array $chain)

Set the jobs that should run if this job is successful.

prependToChain(mixed $job)

Prepend a job to the current chain so that it is run after the currently running job.

appendToChain(mixed $job)

Append a job to the end of the current chain.

string
serializeJob(mixed $job)

Serialize a job for queuing.

void
dispatchNextJobInChain()

Dispatch the next job on the chain.

void
invokeChainCatchCallbacks(Throwable|null $e)

Invoke all of the chain's failed job callbacks.

void
assertHasChain(array $expectedChain)

Assert that the job has the given chain of jobs attached to it.

void
assertDoesntHaveChain()

Assert that the job has no remaining chained jobs.

mixed
getSerializedPropertyValue(mixed $value, bool $withRelations = true)

Get the property value prepared for serialization.

mixed
getRestoredPropertyValue(mixed $value)

Get the restored property value after deserialization.

restoreCollection(ModelIdentifier $value)

Restore a queueable collection instance.

restoreModel(ModelIdentifier $value)

Restore the model from the model identifier instance.

getQueryForModelRestoration(Model $model, array|int|string $ids)

Get the query for model restoration.

array
__serialize()

Prepare the instance values for serialization.

void
__unserialize(array $values)

Restore the model after serialization.

mixed
getPropertyValue(ReflectionProperty $property)

Get the property value for the given property.

__construct(mixed $notifiable, Notification $notification, string $channel)

Create a new event instance.

Details

InteractsWithQueueOutbox viaOutbox()

Dispatch the job through the transactional outbox.

InteractsWithQueueOutbox withoutOutbox()

Dispatch the job without the transactional outbox.

InteractsWithQueueOutbox onOutboxDatabase(UnitEnum|string $connection)

Stage the job on the given database connection.

Parameters

UnitEnum|string $connection

Return Value

InteractsWithQueueOutbox

in Queueable at line 103
Queueable onConnection(UnitEnum|string|null $connection)

Set the desired connection for the job.

Parameters

UnitEnum|string|null $connection

Return Value

Queueable

in Queueable at line 117
Queueable onQueue(UnitEnum|string|null $queue)

Set the desired queue for the job.

Parameters

UnitEnum|string|null $queue

Return Value

Queueable

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.

Parameters

array|UnitEnum|string|int|null $group

Return Value

Queueable

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.

Parameters

array|callable|null $deduplicator

Return Value

Queueable

in Queueable at line 167
Queueable allOnConnection(UnitEnum|string|null $connection)

Set the desired connection for the chain.

Parameters

UnitEnum|string|null $connection

Return Value

Queueable

in Queueable at line 184
Queueable allOnQueue(UnitEnum|string|null $queue)

Set the desired queue for the chain.

Parameters

UnitEnum|string|null $queue

Return Value

Queueable

in Queueable at line 201
Queueable delay(array|DateInterval|DateTimeInterface|int|null $delay)

Set the desired delay in seconds for the job.

Parameters

array|DateInterval|DateTimeInterface|int|null $delay

Return Value

Queueable

in Queueable at line 213
Queueable withoutDelay()

Set the delay for the job to zero seconds.

Return Value

Queueable

in Queueable at line 225
Queueable afterCommit()

Indicate that the job should be dispatched after the open parent database transactions have committed.

Return Value

Queueable

in Queueable at line 237
Queueable beforeCommit()

Indicate that the job should not wait until database transactions have been committed before dispatching.

Return Value

Queueable

in Queueable at line 249
Queueable through(array|object $middleware)

Specify the middleware the job should be dispatched through.

Parameters

array|object $middleware

Return Value

Queueable

in Queueable at line 261
Queueable chain(array $chain)

Set the jobs that should run if this job is successful.

Parameters

array $chain

Return Value

Queueable

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.

Parameters

mixed $job

Return Value

Queueable

in Queueable at line 291
Queueable appendToChain(mixed $job)

Append a job to the end of the current chain.

Parameters

mixed $job

Return Value

Queueable

in Queueable at line 307
protected string serializeJob(mixed $job)

Serialize a job for queuing.

Parameters

mixed $job

Return Value

string

Exceptions

RuntimeException

in Queueable at line 325
void dispatchNextJobInChain()

Dispatch the next job on the chain.

Return Value

void

in Queueable at line 352
void invokeChainCatchCallbacks(Throwable|null $e)

Invoke all of the chain's failed job callbacks.

Parameters

Throwable|null $e

Return Value

void

in Queueable at line 362
void assertHasChain(array $expectedChain)

Assert that the job has the given chain of jobs attached to it.

Parameters

array $expectedChain

Return Value

void

in Queueable at line 384
void assertDoesntHaveChain()

Assert that the job has no remaining chained jobs.

Return Value

void

protected mixed getSerializedPropertyValue(mixed $value, bool $withRelations = true)

Get the property value prepared for serialization.

Parameters

mixed $value
bool $withRelations

Return Value

mixed

protected mixed getRestoredPropertyValue(mixed $value)

Get the restored property value after deserialization.

Parameters

mixed $value

Return Value

mixed

protected Collection restoreCollection(ModelIdentifier $value)

Restore a queueable collection instance.

Parameters

ModelIdentifier $value

Return Value

Collection

Model restoreModel(ModelIdentifier $value)

Restore the model from the model identifier instance.

Parameters

ModelIdentifier $value

Return Value

Model

protected Builder getQueryForModelRestoration(Model $model, array|int|string $ids)

Get the query for model restoration.

Parameters

Model $model
array|int|string $ids

Return Value

Builder

in SerializesModels at line 18
array __serialize()

Prepare the instance values for serialization.

Return Value

array

in SerializesModels at line 69
void __unserialize(array $values)

Restore the model after serialization.

Parameters

array $values

Return Value

void

in SerializesModels at line 105
protected mixed getPropertyValue(ReflectionProperty $property)

Get the property value for the given property.

Unlike Laravel, this reads the stored value without running a get hook, as native serialization does.

Parameters

ReflectionProperty $property

Return Value

mixed

at line 19
__construct(mixed $notifiable, Notification $notification, string $channel)

Create a new event instance.

Parameters

mixed $notifiable
Notification $notification
string $channel