Dispatcher

class Dispatcher implements Dispatcher (View source)

Properties

protected Container $container The IoC container instance.
protected array $listeners The registered event listeners.
protected array $wildcards The wildcard listeners.
protected array $sorted The sorted event listeners.
protected array $firing The event firing stack.
protected callable $queueResolver The queue resolver instance.

Methods

void __construct(Container $container = null)

Create a new event dispatcher instance.

void listen(string|array $events, mixed $listener, int $priority)

Register an event listener with the dispatcher.

void setupWildcardListen(string $event, mixed $listener)

Setup a wildcard listener callback.

bool hasListeners(string $eventName)

Determine if a given event has listeners.

void push(string $event, array $payload = [])

Register an event and payload to be fired later.

void subscribe(object|string $subscriber)

Register an event subscriber with the dispatcher.

mixed resolveSubscriber(object|string $subscriber)

Resolve the subscriber instance.

mixed until(string $event, array $payload = [])

Fire an event until the first non-null response is returned.

void flush(string $event)

Flush a set of pushed events.

string firing()

Get the event that is currently firing.

array|null fire(string|object $event, mixed $payload = [], bool $halt = false)

Fire an event and call the listeners.

void broadcastEvent(ShouldBroadcast $event)

Broadcast the given event class.

array getListeners(string $eventName)

Get all of the listeners for a given event name.

array getWildcardListeners(string $eventName)

Get the wildcard listeners for the event.

void sortListeners(string $eventName)

Sort the listeners for a given event by priority.

mixed makeListener(mixed $listener)

Register an event listener with the dispatcher.

Closure createClassListener(mixed $listener)

Create a class based listener using the IoC container.

callable createClassCallable(string $listener, Container $container)

Create the class based event callable.

array parseClassCallable(string $listener)

Parse the class listener into class and method.

bool handlerShouldBeQueued(string $class)

Determine if the event handler class should be queued.

Closure createQueuedHandlerCallable(string $class, string $method)

Create a callable for putting an event handler on the queue.

array cloneArgumentsForQueueing(array $arguments)

Clone the given arguments for queueing.

void callQueueMethodOnHandler(string $class, string $method, array $arguments)

Call the queue method on the handler class.

void forget(string $event)

Remove a set of listeners from the dispatcher.

void forgetPushed()

Forget all of the pushed listeners.

Queue resolveQueue()

Get the queue implementation from the resolver.

$this setQueueResolver(callable $resolver)

Set the queue resolver implementation.

Details

void __construct(Container $container = null)

Create a new event dispatcher instance.

Parameters

Container $container

Return Value

void

void listen(string|array $events, mixed $listener, int $priority)

Register an event listener with the dispatcher.

Parameters

string|array $events
mixed $listener
int $priority

Return Value

void

protected void setupWildcardListen(string $event, mixed $listener)

Setup a wildcard listener callback.

Parameters

string $event
mixed $listener

Return Value

void

bool hasListeners(string $eventName)

Determine if a given event has listeners.

Parameters

string $eventName

Return Value

bool

void push(string $event, array $payload = [])

Register an event and payload to be fired later.

Parameters

string $event
array $payload

Return Value

void

void subscribe(object|string $subscriber)

Register an event subscriber with the dispatcher.

Parameters

object|string $subscriber

Return Value

void

protected mixed resolveSubscriber(object|string $subscriber)

Resolve the subscriber instance.

Parameters

object|string $subscriber

Return Value

mixed

mixed until(string $event, array $payload = [])

Fire an event until the first non-null response is returned.

Parameters

string $event
array $payload

Return Value

mixed

void flush(string $event)

Flush a set of pushed events.

Parameters

string $event

Return Value

void

string firing()

Get the event that is currently firing.

Return Value

string

array|null fire(string|object $event, mixed $payload = [], bool $halt = false)

Fire an event and call the listeners.

Parameters

string|object $event
mixed $payload
bool $halt

Return Value

array|null

protected void broadcastEvent(ShouldBroadcast $event)

Broadcast the given event class.

Parameters

ShouldBroadcast $event

Return Value

void

array getListeners(string $eventName)

Get all of the listeners for a given event name.

Parameters

string $eventName

Return Value

array

protected array getWildcardListeners(string $eventName)

Get the wildcard listeners for the event.

Parameters

string $eventName

Return Value

array

protected void sortListeners(string $eventName)

Sort the listeners for a given event by priority.

Parameters

string $eventName

Return Value

void

mixed makeListener(mixed $listener)

Register an event listener with the dispatcher.

Parameters

mixed $listener

Return Value

mixed

Closure createClassListener(mixed $listener)

Create a class based listener using the IoC container.

Parameters

mixed $listener

Return Value

Closure

protected callable createClassCallable(string $listener, Container $container)

Create the class based event callable.

Parameters

string $listener
Container $container

Return Value

callable

protected array parseClassCallable(string $listener)

Parse the class listener into class and method.

Parameters

string $listener

Return Value

array

protected bool handlerShouldBeQueued(string $class)

Determine if the event handler class should be queued.

Parameters

string $class

Return Value

bool

protected Closure createQueuedHandlerCallable(string $class, string $method)

Create a callable for putting an event handler on the queue.

Parameters

string $class
string $method

Return Value

Closure

protected array cloneArgumentsForQueueing(array $arguments)

Clone the given arguments for queueing.

Parameters

array $arguments

Return Value

array

protected void callQueueMethodOnHandler(string $class, string $method, array $arguments)

Call the queue method on the handler class.

Parameters

string $class
string $method
array $arguments

Return Value

void

void forget(string $event)

Remove a set of listeners from the dispatcher.

Parameters

string $event

Return Value

void

void forgetPushed()

Forget all of the pushed listeners.

Return Value

void

protected Queue resolveQueue()

Get the queue implementation from the resolver.

Return Value

Queue

$this setQueueResolver(callable $resolver)

Set the queue resolver implementation.

Parameters

callable $resolver

Return Value

$this

© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/5.3/Illuminate/Events/Dispatcher.html