class UniqueLock (View source)

Traits

Properties

protected Repository $cache

The cache repository implementation.

Methods

mixed
getAttributeValue(object $job, string $attributeClass, string|null $property = null, mixed $default = null)

Get a configuration value from an attribute, falling back to a property.

mixed
extractAttributeValue(object $instance)

Extract the value from an attribute instance.

__construct(Repository $cache)

Create a new unique lock manager instance.

bool
acquire(mixed $job)

Attempt to acquire a lock for the given job.

void
release(mixed $job)

Release the lock for the given job.

static string
getKey(mixed $job)

Generate the lock key for the given job.

Details

protected mixed getAttributeValue(object $job, string $attributeClass, string|null $property = null, mixed $default = null)

Get a configuration value from an attribute, falling back to a property.

Parameters

object $job
string $attributeClass
string|null $property
mixed $default

Return Value

mixed

protected mixed extractAttributeValue(object $instance)

Extract the value from an attribute instance.

Parameters

object $instance

Return Value

mixed

__construct(Repository $cache)

Create a new unique lock manager instance.

Parameters

Repository $cache

bool acquire(mixed $job)

Attempt to acquire a lock for the given job.

Parameters

mixed $job

Return Value

bool

void release(mixed $job)

Release the lock for the given job.

Parameters

mixed $job

Return Value

void

static string getKey(mixed $job)

Generate the lock key for the given job.

Parameters

mixed $job

Return Value

string