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 | ID службы слушателя и имя метода, который нужно вызвать |
| int | $priority | Чем выше значение, тем раньше слушатель события будет срабатывать в цепочке. По умолчанию 0. |
Исключения
| InvalidArgumentException |
addSubscriberService(string $serviceId, string $class)
Добавляет службу в качестве подписчика на события.
Параметры
| string | $serviceId | ID службы подписчика |
| string | $class | Имя класса службы (который должен реализовывать EventSubscriberInterface) |
getContainer()
© 2004–2017 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/3.2/Symfony/Component/EventDispatcher/ContainerAwareEventDispatcher.html