class RemoveFromSearchUniquely extends RemoveFromSearch implements ShouldBeUniqueUntilProcessing

Traits

Properties

null|int $tries

The number of times the job may be attempted.

from  ConfiguresJobOptions
null|int|list<int> $backoff

The number of seconds to wait before retrying the job when encountering an uncaught exception.

from  ConfiguresJobOptions
null|int $maxExceptions

The maximum number of unhandled exceptions to allow before failing.

from  ConfiguresJobOptions
bool $failOnTimeout

Indicates if the job should be marked as failed on timeout.

from  ConfiguresJobOptions
Job|null $job

The underlying queue job instance.

from  InteractsWithQueue
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
RemoveableScoutCollection $models

The models to be removed from the search index.

from  RemoveFromSearch
int $uniqueFor

The number of seconds after which the job's unique lock will be released.

from  UniqueByScoutKeys

Methods

void
configureJob()

Configure the job.

static PendingDispatch
dispatch(mixed ...$arguments)

Dispatch the job with the given arguments.

dispatchIf(bool|Closure $boolean, mixed ...$arguments)

Dispatch the job with the given arguments if the given truth test passes.

dispatchUnless(bool|Closure $boolean, mixed ...$arguments)

Dispatch the job with the given arguments unless the given truth test passes.

static mixed
dispatchSync(mixed ...$arguments)

Dispatch a command to its appropriate handler in the current process.

static mixed
dispatchAfterResponse(mixed ...$arguments)

Dispatch a command to its appropriate handler after the current process.

static PendingChain
withChain(array $chain)

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

static PendingDispatch
newPendingDispatch(mixed $job)

Create a new pending job dispatch instance.

int
secondsUntil(DateInterval|DateTimeInterface|int $delay)

Get the number of seconds until the given DateTime.

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

Get the "available at" UNIX timestamp.

parseDateInterval(DateInterval|DateTimeInterface|int|null $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|null $endTime = null)

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

int
attempts()

Get the number of times the job has been attempted.

void
delete()

Delete the job from the queue.

void
fail(string|Throwable|null $exception = null)

Fail the job from the queue.

void
release(DateInterval|DateTimeInterface|int $delay = 0)

Release the job back into the queue after (n) seconds.

withFakeQueueInteractions()

Indicate that queue interactions like fail, delete, and release should be faked.

assertDeleted()

Assert that the job was deleted from the queue.

assertNotDeleted()

Assert that the job was not deleted from the queue.

assertFailed()

Assert that the job was manually failed.

assertFailedWith(string|Throwable $exception)

Assert that the job was manually failed with a specific exception.

assertNotFailed()

Assert that the job was not manually failed.

assertReleased(DateInterval|DateTimeInterface|int|null $delay = null)

Assert that the job was released back onto the queue.

assertNotReleased()

Assert that the job was not released back onto the queue.

setJob(Job $job)

Set the base queue job instance.

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(Collection $models)

Create a new job instance.

void
handle()

Handle the job.

string
uniqueId()

Get the unique identifier for the job.

Details

protected void configureJob()

Configure the job.

Return Value

void

in Dispatchable at line 19
static PendingDispatch dispatch(mixed ...$arguments)

Dispatch the job with the given arguments.

Parameters

mixed ...$arguments

Return Value

PendingDispatch

in Dispatchable at line 27
static Fluent|PendingDispatch dispatchIf(bool|Closure $boolean, mixed ...$arguments)

Dispatch the job with the given arguments if the given truth test passes.

Parameters

bool|Closure $boolean
mixed ...$arguments

Return Value

Fluent|PendingDispatch

in Dispatchable at line 45
static Fluent|PendingDispatch dispatchUnless(bool|Closure $boolean, mixed ...$arguments)

Dispatch the job with the given arguments unless the given truth test passes.

Parameters

bool|Closure $boolean
mixed ...$arguments

Return Value

Fluent|PendingDispatch

in Dispatchable at line 65
static mixed dispatchSync(mixed ...$arguments)

Dispatch a command to its appropriate handler in the current process.

Queueable jobs will be dispatched to the "sync" queue.

Parameters

mixed ...$arguments

Return Value

mixed

in Dispatchable at line 75
static mixed dispatchAfterResponse(mixed ...$arguments)

Dispatch a command to its appropriate handler after the current process.

Parameters

mixed ...$arguments

Return Value

mixed

in Dispatchable at line 83
static PendingChain withChain(array $chain)

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

Parameters

array $chain

Return Value

PendingChain

in Dispatchable at line 91
static protected PendingDispatch newPendingDispatch(mixed $job)

Create a new pending job dispatch instance.

Parameters

mixed $job

Return Value

PendingDispatch

in InteractsWithTime at line 17
protected int secondsUntil(DateInterval|DateTimeInterface|int $delay)

Get the number of seconds until the given DateTime.

Parameters

DateInterval|DateTimeInterface|int $delay

Return Value

int

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

Get the "available at" UNIX timestamp.

Parameters

DateInterval|DateTimeInterface|int|null $delay

Return Value

int

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.

Parameters

DateInterval|DateTimeInterface|int|null $delay

Return Value

DateTimeInterface|int

in InteractsWithTime at line 63
protected int currentTime()

Get the current system time as a UNIX timestamp.

Return Value

int

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.

Parameters

float $startTime
float|null $endTime

Return Value

string

in InteractsWithQueue at line 28
int attempts()

Get the number of times the job has been attempted.

Return Value

int

in InteractsWithQueue at line 36
void delete()

Delete the job from the queue.

Return Value

void

in InteractsWithQueue at line 47
void fail(string|Throwable|null $exception = null)

Fail the job from the queue.

Parameters

string|Throwable|null $exception

Return Value

void

in InteractsWithQueue at line 61
void release(DateInterval|DateTimeInterface|int $delay = 0)

Release the job back into the queue after (n) seconds.

Parameters

DateInterval|DateTimeInterface|int $delay

Return Value

void

in InteractsWithQueue at line 74
InteractsWithQueue withFakeQueueInteractions()

Indicate that queue interactions like fail, delete, and release should be faked.

Return Value

InteractsWithQueue

in InteractsWithQueue at line 84
InteractsWithQueue assertDeleted()

Assert that the job was deleted from the queue.

Return Value

InteractsWithQueue

in InteractsWithQueue at line 99
InteractsWithQueue assertNotDeleted()

Assert that the job was not deleted from the queue.

Return Value

InteractsWithQueue

in InteractsWithQueue at line 114
InteractsWithQueue assertFailed()

Assert that the job was manually failed.

Return Value

InteractsWithQueue

in InteractsWithQueue at line 129
InteractsWithQueue assertFailedWith(string|Throwable $exception)

Assert that the job was manually failed with a specific exception.

Parameters

string|Throwable $exception

Return Value

InteractsWithQueue

in InteractsWithQueue at line 171
InteractsWithQueue assertNotFailed()

Assert that the job was not manually failed.

Return Value

InteractsWithQueue

in InteractsWithQueue at line 186
InteractsWithQueue assertReleased(DateInterval|DateTimeInterface|int|null $delay = null)

Assert that the job was released back onto the queue.

Parameters

DateInterval|DateTimeInterface|int|null $delay

Return Value

InteractsWithQueue

in InteractsWithQueue at line 211
InteractsWithQueue assertNotReleased()

Assert that the job was not released back onto the queue.

Return Value

InteractsWithQueue

in InteractsWithQueue at line 238
InteractsWithQueue setJob(Job $job)

Set the base queue job instance.

Parameters

Job $job

Return Value

InteractsWithQueue

in Queueable at line 97
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 109
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 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.

Parameters

array|UnitEnum|string|int|null $group

Return Value

Queueable

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.

Parameters

array|callable|null $deduplicator

Return Value

Queueable

in Queueable at line 153
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 168
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 183
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 193
Queueable withoutDelay()

Set the delay for the job to zero seconds.

Return Value

Queueable

in Queueable at line 203
Queueable afterCommit()

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

Return Value

Queueable

in Queueable at line 213
Queueable beforeCommit()

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

Return Value

Queueable

in Queueable at line 223
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 233
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 245
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 259
Queueable appendToChain(mixed $job)

Append a job to the end of the current chain.

Parameters

mixed $job

Return Value

Queueable

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

Serialize a job for queuing.

Parameters

mixed $job

Return Value

string

Exceptions

RuntimeException

in Queueable at line 293
void dispatchNextJobInChain()

Dispatch the next job on the chain.

Return Value

void

in Queueable at line 316
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 326
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 348
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 68
void __unserialize(array $values)

Restore the model after serialization.

Parameters

array $values

Return Value

void

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

Get the property value for the given property.

Parameters

ReflectionProperty $property

Return Value

mixed

in RemoveFromSearch at line 33
__construct(Collection $models)

Create a new job instance.

Parameters

Collection $models

in RemoveFromSearch at line 43
void handle()

Handle the job.

Return Value

void

in UniqueByScoutKeys at line 22
string uniqueId()

Get the unique identifier for the job.

Return Value

string