Отслеживаемый диспетчер событий
класс TraceableEventDispatcher реализует TraceableEventDispatcherInterface
Собраны данные об обработчиках событий.
Этот диспетчер событий делегирует обработку другому.
Свойства
| защищённый | $logger | ||
| защищённый | $stopwatch |
Методы
| __construct(EventDispatcherInterface $dispatcher, Stopwatch $stopwatch, LoggerInterface $logger = null) | ||
| addListener(string $eventName, callable $listener, int $priority = 0) Добавляет обработчик событий, который слушает указанные события. | ||
| addSubscriber(EventSubscriberInterface $subscriber) Добавляет подписчика на события. | ||
| removeListener(string $eventName, callable $listener) Удаляет обработчик событий из указанных событий. | ||
| removeSubscriber(EventSubscriberInterface $subscriber) | ||
| массив | getListeners(string $eventName = null) Возвращает обработчики конкретного события или все обработчики, отсортированные по убыванию приоритета. | |
| int|null | getListenerPriority(string $eventName, callable $listener) Возвращает приоритет обработчика для конкретного события. | |
| bool | hasListeners(string $eventName = null) Проверяет, есть ли у события зарегистрированные обработчики. | |
| Event | dispatch(string $eventName, Event $event = null) Отправляет событие всем зарегистрированным обработчикам. | |
| массив | getCalledListeners() Возвращает вызываемые обработчики. | |
| массив | getNotCalledListeners() Возвращает не вызываемые обработчики. | |
| массив | getOrphanedEvents() | |
| reset() Сбрасывает отслеживание. | ||
| смешанный | __call(string $method, array $arguments) Перенаправляет все вызовы методов на исходный диспетчер событий. | |
| preDispatch(string $eventName, Event $event) Вызывается перед отправкой события. | ||
| postDispatch(string $eventName, Event $event) Вызывается после отправки события. |
Детали
__construct(EventDispatcherInterface $dispatcher, Stopwatch $stopwatch, LoggerInterface $logger = null)
Параметры
| EventDispatcherInterface | $dispatcher | |
| Stopwatch | $stopwatch | |
| LoggerInterface | $logger |
addListener(string $eventName, callable $listener, int $priority = 0)
Добавляет обработчик событий, который слушает указанные события.
Параметры
| string | $eventName | Событие, за которым нужно следить |
| callable | $listener | Обработчик |
| int | $priority | Чем больше это значение, тем раньше обработчик событий будет активирован в цепочке (по умолчанию 0) |
addSubscriber(EventSubscriberInterface $subscriber)
Добавляет подписчика на события.
От подписчика запрашиваются все события, которые его интересуют, и он добавляется как обработчик для этих событий.
Параметры
| EventSubscriberInterface | $subscriber |
removeListener(string $eventName, callable $listener)
Удаляет обработчик событий для указанных событий.
Параметры
| string | $eventName | Событие, из которого нужно удалить обработчик |
| callable | $listener | Обработчик, который нужно удалить |
removeSubscriber(EventSubscriberInterface $subscriber)
Параметры
| EventSubscriberInterface | $subscriber |
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 |
Event dispatch(string $eventName, Event $event = null)
Отправляет событие всем зарегистрированным обработчикам.
Параметры
| string | $eventName | Имя события для отправки. Имя события — это имя метода, который вызывается у обработчиков. |
| Event | $event | Событие, передаваемое обработчикам. Если не указано, создаётся пустой экземпляр события |
Возвращаемое значение
| Event |
array getCalledListeners()
Возвращает вызываемые обработчики.
Возвращаемое значение
| array | Массив вызываемых обработчиков |
array getNotCalledListeners()
Возвращает не вызываемые обработчики.
Возвращаемое значение
| array | Массив не вызываемых обработчиков |
array getOrphanedEvents()
Возвращаемое значение
| array |
reset()
Сбрасывает трассировку.
mixed __call(string $method, array $arguments)
Перенаправляет все вызовы методов на исходный диспетчер событий.
Параметры
| string | $method | Имя метода |
| array | $arguments | Аргументы метода |
Возвращаемое значение
| mixed |
protected preDispatch(string $eventName, Event $event)
Вызывается перед отправкой события.
Параметры
| string | $eventName | Имя события |
| Event | $event | Событие |
protected postDispatch(string $eventName, Event $event)
Вызывается после отправки события.
Параметры
| string | $eventName | Имя события |
| Event | $event | Событие |
© 2004–2017 Fabien Potencier
Licensed under the MIT License.
https://api.symfony.com/4.1/Symfony/Component/EventDispatcher/Debug/TraceableEventDispatcher.html