ContainerAwareEventDispatcher
class ContainerAwareEventDispatcher extends EventDispatcher
Лениво загружает слушателей и подписчиков из контейнера зависимостей.
Методы
| Event | dispatch(string $eventName, Event $event = null) Отправляет событие всем зарегистрированным слушателям. | из EventDispatcher |
| array | getListeners(string $eventName = null) Получает слушателей конкретного события или всех слушателей, отсортированных по убыванию приоритета. | |
| int|null | getListenerPriority(string $eventName, callable $listener) Получает приоритет слушателя для конкретного события. | |
| bool | hasListeners(string $eventName = null) Проверяет, есть ли у события зарегистрированные слушатели. | |
| addListener(string $eventName, callable $listener, int $priority) Добавляет слушателя события, который реагирует на указанные события. | из EventDispatcher | |
| removeListener(string $eventName, callable $listener) Удаляет слушателя события из указанных событий. | ||
| addSubscriber(EventSubscriberInterface $subscriber) Добавляет подписчика на события. | из EventDispatcher | |
| removeSubscriber(EventSubscriberInterface $subscriber) Удаляет подписчика на события. | из EventDispatcher | |
| __construct(ContainerInterface $container) Конструктор. | ||
| addListenerService(string $eventName, array $callback, int $priority) Добавляет сервис в качестве слушателя событий. | ||
| addSubscriberService(string $serviceId, string $class) Добавляет сервис в качестве подписчика на события. | ||
| getContainer() |
Подробное описание
Event dispatch(string $eventName, Event $event = null)
Отправляет событие всем зарегистрированным слушателям.
Параметры
| string | $eventName | Имя события для отправки. Имя события — это имя метода, вызываемого у слушателей. |
| Event | $event | Событие, передаваемое обработчикам/слушателям. Если не указано, создаётся пустой экземпляр события. |
Возвращаемое значение
| Event |
array getListeners(string $eventName = null)
Получает слушателей конкретного события или всех слушателей, отсортированных по убыванию приоритета.
Параметры
| string | $eventName | Имя события |
Возвращаемое значение
| array | Слушатели событий для указанного события или все слушатели событий по имени события |
int|null getListenerPriority(string $eventName, callable $listener)
Получает приоритет слушателя для конкретного события.
Возвращает null, если событие или слушатель не существует.
Параметры
| string | $eventName | Имя события |
| callable | $listener | Слушатель |
Возвращаемое значение
| int|null | Приоритет слушателя событий |
bool hasListeners(string $eventName = null)
Проверяет, есть ли у события зарегистрированные слушатели.
Параметры
| string | $eventName | Имя события |
Возвращаемое значение
| bool | true, если у указанного события есть слушатели, иначе false |
addListener(string $eventName, callable $listener, int $priority)
Добавляет слушателя события, который реагирует на указанные события.
Параметры
| string | $eventName | Событие, на которое нужно реагировать |
| callable | $listener | Слушатель |
| int | $priority | Чем выше это значение, тем раньше слушатель события будет срабатывать в цепочке (по умолчанию 0) |
removeListener(string $eventName, callable $listener)
Удаляет слушателя события из указанных событий.
Параметры
| string | $eventName | Событие, из которого нужно удалить слушателя |
| callable | $listener | Слушатель для удаления |
addSubscriber(EventSubscriberInterface $subscriber)
Добавляет подписчика на события.
Подписчику предлагается указать все интересующие его события, и он добавляется в качестве слушателя для этих событий.
Параметры
| EventSubscriberInterface | $subscriber | Подписчик. |
removeSubscriber(EventSubscriberInterface $subscriber)
Удаляет подписчика на события.
Параметры
| EventSubscriberInterface | $subscriber | Подписчик |
__construct(ContainerInterface $container)
Конструктор.
Параметры
| ContainerInterface | $container | Экземпляр ContainerInterface |
addListenerService(string $eventName, array $callback, int $priority)
Добавляет сервис в качестве слушателя событий.
Параметры
| string | $eventName | Событие, для которого добавляется слушатель |
| array | $callback | Идентификатор сервиса слушателя и имя метода, который должен быть вызван |
| int | $priority | Чем выше это значение, тем раньше слушатель события будет срабатывать в цепочке. По умолчанию 0. |
Исключения
| InvalidArgumentException |
addSubscriberService(string $serviceId, string $class)
Добавляет сервис в качестве подписчика на события.
Параметры
| string | $serviceId | Идентификатор сервиса подписчика |
| string | $class | Имя класса сервиса (который должен реализовывать EventSubscriberInterface) |
getContainer()
© 2004–2017 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/3.0/Symfony/Component/EventDispatcher/ContainerAwareEventDispatcher.html