ContainerAwareEventDispatcher
class ContainerAwareEventDispatcher extends EventDispatcher
Лениво загружает слушателей и подписчиков из контейнера инъекции зависимостей.
Методы
| Event | dispatch(string $eventName, Event $event = null) Отправляет событие всем зарегистрированным слушателям. | from 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) Добавляет слушателя событий, который слушает указанные события. | from EventDispatcher | |
| removeListener(string $eventName, callable $listener) Удаляет слушателя события из указанных событий. | ||
| addSubscriber(EventSubscriberInterface $subscriber) Добавляет подписчика на события. | from EventDispatcher | |
| removeSubscriber(EventSubscriberInterface $subscriber) Удаляет подписчика на события. | from 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.1/Symfony/Component/EventDispatcher/ContainerAwareEventDispatcher.html