Диспечер
класс Dispatcher реализует Dispatcher (View source)
Свойства
| protected Container | $container | Экземпляр контейнера IoC. | |
| protected array | $listeners | Зарегистрированные слушатели событий. | |
| protected array | $wildcards | Слушатели по маске. | |
| protected array | $sorted | Отсортированные слушатели событий. | |
| protected array | $firing | Стек запуска событий. | |
| protected callable | $queueResolver | Экземпляр обработчика очереди. |
Методы
| void | __construct(Container $container = null) Создать новый экземпляр диспечера событий. | |
| void | listen(string|array $events, mixed $listener, int $priority) Зарегистрировать слушателя события в диспечере. | |
| void | setupWildcardListen(string $event, mixed $listener) Настроить обратный вызов для слушателя по маске. | |
| bool | hasListeners(string $eventName) Определить, есть ли слушатели для заданного события. | |
| void | push(string $event, array $payload = []) Зарегистрировать событие и полезную нагрузку для последующего запуска. | |
| void | subscribe(object|string $subscriber) Зарегистрировать подписчика на события в диспечере. | |
| mixed | resolveSubscriber(object|string $subscriber) Разрешить экземпляр подписчика. | |
| mixed | until(string $event, array $payload = []) Запустить событие, пока не будет возвращён первый ненулевой ответ. | |
| void | flush(string $event) Очистить набор отложенных событий. | |
| string | firing() Получить событие, которое в данный момент обрабатывается. | |
| array|null | fire(string|object $event, mixed $payload = [], bool $halt = false) Запустить событие и вызвать слушателей. | |
| void | broadcastEvent(ShouldBroadcast $event) Транслировать данный класс события. | |
| array | getListeners(string $eventName) Получить всех слушателей для заданного имени события. | |
| array | getWildcardListeners(string $eventName) Получить слушателей по маске для события. | |
| void | sortListeners(string $eventName) Отсортировать слушателей для заданного события по приоритету. | |
| mixed | makeListener(mixed $listener) Зарегистрировать слушателя события в диспечере. | |
| Closure | createClassListener(mixed $listener) Создать слушателя на основе класса, используя контейнер IoC. | |
| callable | createClassCallable(string $listener, Container $container) Создать вызываемый объект для события на основе класса. | |
| array | parseClassCallable(string $listener) Разбор слушателя класса в класс и метод. | |
| bool | handlerShouldBeQueued(string $class) Определить, должен ли обработчик события быть помещён в очередь. | |
| Closure | createQueuedHandlerCallable(string $class, string $method) Создать вызываемый объект для помещения обработчика события в очередь. | |
| array | cloneArgumentsForQueueing(array $arguments) Создать копию переданных аргументов для размещения в очереди. | |
| void | callQueueMethodOnHandler(string $class, string $method, array $arguments) Вызвать метод очереди в классе обработчика. | |
| void | forget(string $event) Удалить набор слушателей из диспечера. | |
| void | forgetPushed() Удалить все отложенные слушатели. | |
| Queue | resolveQueue() Получить реализацию очереди из обработчика. | |
| $this | setQueueResolver(callable $resolver) Установить реализацию обработчика очереди. |
Подробности
void __construct(Container $container = null)
Создать новый экземпляр диспечера событий.
void listen(string|array $events, mixed $listener, int $priority)
Зарегистрировать слушателя события в диспечере.
protected void setupWildcardListen(string $event, mixed $listener)
Настроить обратный вызов для слушателя по маске.
bool hasListeners(string $eventName)
Определить, есть ли слушатели для заданного события.
void push(string $event, array $payload = [])
Зарегистрировать событие и полезную нагрузку для последующего запуска.
void subscribe(object|string $subscriber)
Зарегистрировать подписчика на событие в диспетчере.
protected mixed resolveSubscriber(object|string $subscriber)
Разрешить экземпляр подписчика.
mixed until(string $event, array $payload = [])
Сгенерировать событие до получения первого ненулевого ответа.
void flush(string $event)
Очистить набор отправленных событий.
string firing()
Получить событие, которое в данный момент генерируется.
array|null fire(string|object $event, mixed $payload = [], bool $halt = false)
Сгенерировать событие и вызвать слушателей.
protected void broadcastEvent(ShouldBroadcast $event)
Транслировать заданный класс события.
array getListeners(string $eventName)
Получить всех слушателей для данного имени события.
protected array getWildcardListeners(string $eventName)
Получить слушателей с подстановкой для события.
protected void sortListeners(string $eventName)
Отсортировать слушателей для данного события по приоритету.
mixed makeListener(mixed $listener)
Зарегистрировать слушателя события с диспетчером.
Closure createClassListener(mixed $listener)
Создать слушателя на основе класса, используя контейнер IoC.
protected callable createClassCallable(string $listener, Container $container)
Создать вызываемый элемент события на основе класса.
protected array parseClassCallable(string $listener)
Разбить слушателя на основе класса на класс и метод.
protected bool handlerShouldBeQueued(string $class)
Определить, должен ли обработчик событий быть помещён в очередь.
protected Closure createQueuedHandlerCallable(string $class, string $method)
Создать вызываемый элемент для помещения обработчика события в очередь.
protected array cloneArgumentsForQueueing(array $arguments)
Создать копию переданных аргументов для помещения в очередь.
protected void callQueueMethodOnHandler(string $class, string $method, array $arguments)
Вызвать метод очереди в классе обработчика.
void forget(string $event)
Удалить набор слушателей из диспетчера.
void forgetPushed()
Удалить всех отправленных слушателей.
protected Queue resolveQueue()
Получить реализацию очереди из резолвера.
$this setQueueResolver(callable $resolver)
Установить реализацию обработчика очереди.
© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/5.3/Illuminate/Events/Dispatcher.html