SqsQueue
class SqsQueue extends Queue implements Queue, ClearableQueue (View source)
Traits
Properties
protected Container | $container | The IoC container instance. |
from Queue |
protected string | $connectionName | The connection name for the queue. |
from Queue |
protected | $dispatchAfterCommit | Indicates that jobs should be dispatched after all database transactions have committed. |
from Queue |
static protected callable[] | $createPayloadCallbacks | The create payload callbacks. |
from Queue |
protected SqsClient | $sqs | The Amazon SQS instance. |
|
protected string | $default | The name of the default queue. |
|
protected string | $prefix | The queue URL prefix. |
|
protected string | $suffix | The queue name suffix. |
Methods
Get the number of seconds until the given DateTime.
If the given value is an interval, convert it to a DateTime instance.
Push a new job onto the queue.
Push a new job onto a specific queue after (n) seconds.
Push an array of jobs onto the queue.
Create a payload string from the given job and data.
Create a payload array from the given job and data.
Create a payload for an object-based queue handler.
Get the expiration timestamp for an object-based queue handler.
Create a typical, string based queue payload array.
Register a callback to be executed when creating job payloads.
Create the given payload using any registered payload hooks.
Enqueue a job using the given callback.
Determine if the job should be dispatched after all database transactions have committed.
Create a new Amazon SQS queue instance.
Get the size of the queue.
Push a new job onto the queue.
Push a raw payload onto the queue.
Push a new job onto the queue after (n) seconds.
Delete all of the jobs from the queue.
Get the queue or return the default.
Add the given suffix to the given queue name.
Get the underlying SQS instance.
Details
protected int
secondsUntil(DateTimeInterface|DateInterval|int $delay)
Get the number of seconds until the given DateTime.
protected int
availableAt(DateTimeInterface|DateInterval|int $delay = 0)
Get the "available at" UNIX timestamp.
protected DateTimeInterface|int
parseDateInterval(DateTimeInterface|DateInterval|int $delay)
If the given value is an interval, convert it to a DateTime instance.
protected int
currentTime()
Get the current system time as a UNIX timestamp.
in
Queue at line 55
mixed
pushOn(string $queue, string $job, mixed $data = '')
Push a new job onto the queue.
in
Queue at line 69
mixed
laterOn(string $queue, DateTimeInterface|DateInterval|int $delay, string $job, mixed $data = '')
Push a new job onto a specific queue after (n) seconds.
void
bulk(array $jobs, mixed $data = '', string|null $queue = null)
Push an array of jobs onto the queue.
in
Queue at line 99
protected string
createPayload(Closure|string|object $job, string $queue, mixed $data = '')
Create a payload string from the given job and data.
in
Queue at line 124
protected array
createPayloadArray(string|object $job, string $queue, mixed $data = '')
Create a payload array from the given job and data.
in
Queue at line 138
protected array
createObjectPayload(object $job, string $queue)
Create a payload for an object-based queue handler.
in
Queue at line 174
protected string
getDisplayName(object $job)
Get the display name for the given job.
in
Queue at line 186
mixed
getJobBackoff(mixed $job)
Get the backoff for an object-based queue handler.
in
Queue at line 209
mixed
getJobExpiration(mixed $job)
Get the expiration timestamp for an object-based queue handler.
in
Queue at line 227
protected bool
jobShouldBeEncrypted(object $job)
Determine if the job should be encrypted.
in
Queue at line 244
protected array
createStringPayload(string $job, string $queue, mixed $data)
Create a typical, string based queue payload array.
in
Queue at line 265
static void
createPayloadUsing(callable|null $callback)
Register a callback to be executed when creating job payloads.
in
Queue at line 281
protected array
withCreatePayloadHooks(string $queue, array $payload)
Create the given payload using any registered payload hooks.
in
Queue at line 302
protected mixed
enqueueUsing(Closure|string|object $job, string $payload, string $queue, DateTimeInterface|DateInterval|int|null $delay, callable $callback)
Enqueue a job using the given callback.
in
Queue at line 326
protected bool
shouldDispatchAfterCommit(Closure|string|object $job)
Determine if the job should be dispatched after all database transactions have committed.
in
Queue at line 346
protected void
raiseJobQueuedEvent(string|int|null $jobId, Closure|string|object $job)
Raise the job queued event.
in
Queue at line 358
string
getConnectionName()
Get the connection name for the queue.
in
Queue at line 369
$this
setConnectionName(string $name)
Set the connection name for the queue.
in
Queue at line 381
Container
getContainer()
Get the container instance being used by the connection.
in
Queue at line 392
void
setContainer(Container $container)
Set the IoC container instance.
void
__construct(SqsClient $sqs, string $default, string $prefix = '', string $suffix = '', bool $dispatchAfterCommit = false)
Create a new Amazon SQS queue instance.
int
size(string|null $queue = null)
Get the size of the queue.
mixed
push(string|object $job, mixed $data = '', string|null $queue = null)
Push a new job onto the queue.
mixed
pushRaw(string $payload, string|null $queue = null, array $options = [])
Push a raw payload onto the queue.
mixed
later(DateTimeInterface|DateInterval|int $delay, string|object $job, mixed $data = '', string|null $queue = null)
Push a new job onto the queue after (n) seconds.
Job|null
pop(string|null $queue = null)
Pop the next job off of the queue.
int
clear(string $queue)
Delete all of the jobs from the queue.
string
getQueue(string|null $queue)
Get the queue or return the default.
protected string
suffixQueue(string $queue, string $suffix = '')
Add the given suffix to the given queue name.
SqsClient
getSqs()
Get the underlying SQS instance.