BeanstalkdQueue
class BeanstalkdQueue extends Queue implements Queue (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 bool | $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 PheanstalkSubscriberInterface | $pheanstalk | The Pheanstalk instance. |
|
protected string | $default | The name of the default tube. |
|
protected int | $timeToRun | The "time to run" for all pushed jobs. |
|
protected int | $blockFor | The maximum number of seconds to block for a job. |
Methods
Get the number of seconds until the given DateTime.
If the given value is an interval, convert it to a DateTime instance.
Given a start time, format the total run time for human readability.
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 maximum number of attempts 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.
Raise the job queueing event.
Raise the job queued event.
Create a new Beanstalkd 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 a message from the Beanstalk queue.
Get the queue or return the default.
Get the underlying Pheanstalk 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.
protected string
runTimeForHumans(float $startTime, float $endTime = null)
Given a start time, format the total run time for human readability.
in
Queue at line 57
mixed
pushOn(string $queue, string $job, mixed $data = '')
Push a new job onto the queue.
in
Queue at line 71
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 101
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 126
protected array
createPayloadArray(string|object $job, string $queue, mixed $data = '')
Create a payload array from the given job and data.
in
Queue at line 140
protected array
createObjectPayload(object $job, string $queue)
Create a payload for an object-based queue handler.
in
Queue at line 176
protected string
getDisplayName(object $job)
Get the display name for the given job.
in
Queue at line 188
mixed
getJobTries(mixed $job)
Get the maximum number of attempts for an object-based queue handler.
in
Queue at line 207
mixed
getJobBackoff(mixed $job)
Get the backoff for an object-based queue handler.
in
Queue at line 228
mixed
getJobExpiration(mixed $job)
Get the expiration timestamp for an object-based queue handler.
in
Queue at line 246
protected bool
jobShouldBeEncrypted(object $job)
Determine if the job should be encrypted.
in
Queue at line 263
protected array
createStringPayload(string $job, string $queue, mixed $data)
Create a typical, string based queue payload array.
in
Queue at line 284
static void
createPayloadUsing(callable|null $callback)
Register a callback to be executed when creating job payloads.
in
Queue at line 300
protected array
withCreatePayloadHooks(string $queue, array $payload)
Create the given payload using any registered payload hooks.
in
Queue at line 321
protected mixed
enqueueUsing(Closure|string|object $job, string $payload, string|null $queue, DateTimeInterface|DateInterval|int|null $delay, callable $callback)
Enqueue a job using the given callback.
in
Queue at line 349
protected bool
shouldDispatchAfterCommit(Closure|string|object $job)
Determine if the job should be dispatched after all database transactions have committed.
in
Queue at line 371
protected void
raiseJobQueueingEvent(string $queue, Closure|string|object $job, string $payload, DateTimeInterface|DateInterval|int|null $delay)
Raise the job queueing event.
in
Queue at line 390
protected void
raiseJobQueuedEvent(string|null $queue, string|int|null $jobId, Closure|string|object $job, string $payload, DateTimeInterface|DateInterval|int|null $delay)
Raise the job queued event.
in
Queue at line 404
string
getConnectionName()
Get the connection name for the queue.
in
Queue at line 415
$this
setConnectionName(string $name)
Set the connection name for the queue.
in
Queue at line 427
Container
getContainer()
Get the container instance being used by the connection.
in
Queue at line 438
void
setContainer(Container $container)
Set the IoC container instance.
void
__construct(PheanstalkSubscriberInterface $pheanstalk, string $default, int $timeToRun, int $blockFor = 0, bool $dispatchAfterCommit = false)
Create a new Beanstalkd 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.
void
deleteMessage(string $queue, string|int $id)
Delete a message from the Beanstalk queue.
string
getQueue(string|null $queue)
Get the queue or return the default.
PheanstalkSubscriberInterface
getPheanstalk()
Get the underlying Pheanstalk instance.