class CacheCommandMutex implements CommandMutex (View source)

Traits

Properties

Factory $cache

The cache factory implementation.

string|null $store

The cache store that should be used.

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.

__construct(Factory $cache)

Create a new command mutex.

bool
create(Command $command)

Attempt to obtain a command mutex for the given command.

bool
exists(Command $command)

Determine if a command mutex exists for the given command.

bool
forget(Command $command)

Release the mutex for the given command.

string
commandMutexName(Command $command)

Get the isolatable command mutex name.

$this
useStore(string|null $store)

Specify the cache store that should be used.

bool
shouldUseLocks(Store $store)

Determine if the given store should use locks for command mutexes.

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

__construct(Factory $cache)

Create a new command mutex.

Parameters

Factory $cache

bool create(Command $command)

Attempt to obtain a command mutex for the given command.

Parameters

Command $command

Return Value

bool

bool exists(Command $command)

Determine if a command mutex exists for the given command.

Parameters

Command $command

Return Value

bool

bool forget(Command $command)

Release the mutex for the given command.

Parameters

Command $command

Return Value

bool

protected string commandMutexName(Command $command)

Get the isolatable command mutex name.

Parameters

Command $command

Return Value

string

$this useStore(string|null $store)

Specify the cache store that should be used.

Parameters

string|null $store

Return Value

$this

protected bool shouldUseLocks(Store $store)

Determine if the given store should use locks for command mutexes.

Parameters

Store $store

Return Value

bool

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.