Dispatcher
class Dispatcher implements QueueingDispatcher (View source)
Properties
| protected Container | $container | The container implementation. |
|
| protected Pipeline | $pipeline | The pipeline instance for the bus. |
|
| protected array | $pipes | The pipes to send commands through before dispatching. |
|
| protected array | $handlers | The command to handler mapping for non-self-handling events. |
|
| protected Closure|null | $queueResolver | The queue resolver callback. |
|
| protected bool | $allowsDispatchingAfterResponses | Indicates if dispatching after response is disabled. |
Methods
Create a new command dispatcher instance.
Dispatch a command to its appropriate handler.
Dispatch a command to its appropriate handler in the current process.
Dispatch a command to its appropriate handler in the current process without using the synchronous queue.
Determine if the given command has a handler.
Retrieve the handler for a command.
Determine if the given command should be queued.
Dispatch a command to its appropriate handler behind a queue.
Dispatch a command to its appropriate handler after the current process.
Set the pipes through which commands should be piped before dispatching.
Map a command to a handler.
Allow dispatching after responses.
Disable dispatching after responses.
Details
__construct(Container $container, Closure|null $queueResolver = null)
Create a new command dispatcher instance.
mixed
dispatch(mixed $command)
Dispatch a command to its appropriate handler.
mixed
dispatchSync(mixed $command, mixed $handler = null)
Dispatch a command to its appropriate handler in the current process.
Queueable jobs will be dispatched to the "sync" queue.
mixed
dispatchNow(mixed $command, mixed $handler = null)
Dispatch a command to its appropriate handler in the current process without using the synchronous queue.
Batch|null
findBatch(string $batchId)
Attempt to find the batch with the given ID.
PendingBatch
batch(Collection|array $jobs)
Create a new batch of queueable jobs.
PendingChain
chain(Collection|array|null $jobs = null)
Create a new chain of queueable jobs.
bool
hasCommandHandler(mixed $command)
Determine if the given command has a handler.
mixed
getCommandHandler(mixed $command)
Retrieve the handler for a command.
protected bool
commandShouldBeQueued(mixed $command)
Determine if the given command should be queued.
mixed
dispatchToQueue(mixed $command)
Dispatch a command to its appropriate handler behind a queue.
protected mixed
pushCommandToQueue(Queue $queue, mixed $command)
Push the command onto the given queue instance.
void
dispatchAfterResponse(mixed $command, mixed $handler = null)
Dispatch a command to its appropriate handler after the current process.
$this
pipeThrough(array $pipes)
Set the pipes through which commands should be piped before dispatching.
$this
map(array $map)
Map a command to a handler.
$this
withDispatchingAfterResponses()
Allow dispatching after responses.
$this
withoutDispatchingAfterResponses()
Disable dispatching after responses.
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.