Класс CakeEventManager
Менеджер событий отвечает за отслеживание слушателей событий, передачу правильных данных им и их вызов в правильном порядке, когда срабатывают связанные события. Вы можете создать несколько экземпляров этого объекта для управления локальными событиями или сохранить один экземпляр и передавать его для управления всеми событиями в вашем приложении.
Авторские права: Авторские права (c) Cake Software Foundation, Inc. (https://cakefoundation.org)
Лицензия: Лицензия MIT
Расположение: Cake/Event/CakeEventManager.php
Краткое описание свойств
- Глобально доступный экземпляр, используемый для отправки событий, прикрепленных из любого контекста
-
$_isGlobalprotectedВнутренний флаг для различения общего менеджера и синглтонаboolean -
$_listenersprotectedСписок обратных вызовов слушателей, связанных сobject - Значение очереди приоритетов по умолчанию для новых прикрепленных слушателей
integer
Краткое описание методов
- _attachSubscriber() protected
Вспомогательная функция для прикрепления всех реализованных обратных вызовов экземпляра класса CakeEventListener как отдельных методов к этому менеджеру
- _detachSubscriber() protectedВспомогательная функция для отключения всех слушателей, предоставляемых объектом, реализующим CakeEventListener
- _extractCallable() protected
Вспомогательная функция для извлечения и возврата типа обратного вызова PHP из определения обратного вызова из возвращаемого значения метода
implementedEventsв CakeEventListener - attach() publicДобавляет нового слушателя к событию. Слушатели
- detach() publicУдаляет слушателя из активных слушателей.
- dispatch() publicОтправляет новое событие всем настроенным слушателям
-
Возвращает глобально доступный экземпляр CakeEventManager, используемый для отправки событий, прикрепленных вне области видимости других созданных менеджеров. Обычно для создания систем хуков или межклассовой коммуникации
- listeners() publicВозвращает список всех слушателей для eventKey в порядке их вызова
- prioritisedListeners() publicВозвращает слушателей для указанного ключа события, индексированного по приоритету
Подробное описание методов
_attachSubscriber()source protected
_attachSubscriber( CakeEventListener $subscriber )
Вспомогательная функция для прикрепления всех реализованных обратных вызовов экземпляра класса CakeEventListener в качестве отдельных методов к этому менеджеру
Параметры
-
CakeEventListener$subscriber - Слушатель событий.
_detachSubscriber()source protected
_detachSubscriber( CakeEventListener $subscriber , string $eventKey null )
Вспомогательная функция для отключения всех слушателей, предоставляемых объектом, реализующим CakeEventListener
Параметры
-
CakeEventListener$subscriber - слушатель, который требуется отключить
- строка
$eventKeyопционально null - необязательный ключ имени события, для отключения слушателя
_extractCallable()source protected
_extractCallable( array $function , CakeEventListener $object )
Вспомогательная функция для извлечения и возврата типа обратного вызова PHP из определения обратного вызова из возвращаемого значения метода implementedEvents в CakeEventListener
Параметры
- массив
$function - массив, взятый из определения обработчика события
-
CakeEventListener$object - объект-обработчик
Возвращает
callableattach()source public
attach( callable|CakeEventListener $callable , string $eventKey null , array $options array() )
Добавляет нового слушателя к событию. Слушатели
Параметры
- обратный вызов|
CakeEventListener$callable Действительный PHP обратный вызов или экземпляр CakeEventListener, который вызывается при срабатывании события с именем $eventKey. Если передан экземпляр CakeEventListener, то метод
implementedEventsбудет вызван в объекте для регистрации объявленных событий индивидуально в качестве методов, которые будет управлять этот класс. Можно определить несколько обработчиков событий на одно имя события.- строка
$eventKeyопционально null Уникальное идентификационное имя события, с которым будет связан обратный вызов. Если $callable является экземпляром CakeEventListener, этот аргумент будет проигнорирован
- массив
$optionsопционально array() используется для установки флагов
priorityиpassParamsдля слушателя. Приоритеты обрабатываются как очереди, и несколько прикрепленных элементов в одной очереди приоритетов будут обрабатываться в порядке вставки.passParamsозначает, что свойство данных события будет преобразовано в аргументы функции при вызове слушателя. Если $called является экземпляром CakeEventListener, этот параметр будет проигнорирован
Исключения
InvalidArgumentExceptionЕсли ключ события отсутствует или обратный вызов не является экземпляром CakeEventListener.
detach()source public
detach( callable|CakeEventListener $callable , string $eventKey null )
Удаляет слушателя из активных слушателей.
Параметры
- обратный вызов|
CakeEventListener$callable - любой допустимый PHP обратный вызов или экземпляр CakeEventListener
- строка
$eventKeyопционально null - Уникальное идентификационное имя события, с которым был связан обратный вызов
dispatch()source public
dispatch( string|CakeEvent $event )
Отправляет новое событие всем настроенным слушателям
Параметры
- строка|
CakeEvent$event - имя ключа события или экземпляр CakeEvent
Возвращает
CakeEventСрабатывает
$eventinstance()source public static
instance( CakeEventManager $manager null )
Возвращает глобально доступный экземпляр CakeEventManager, используемый для отправки событий, прикрепленных вне области видимости других созданных менеджеров. Обычно для создания систем хуков или межклассовой коммуникации
При вызове с первым параметром он будет установлен в качестве глобально доступного экземпляра
Параметры
-
CakeEventManager$managerопционально null - Необязательный экземпляр менеджера событий.
Возвращает
CakeEventManagerГлобальный менеджер событий
listeners()source public
listeners( string $eventKey )
Возвращает список всех слушателей для eventKey в порядке их вызова
Параметры
- строка
$eventKey - Ключ события.
Возвращает
массивprioritisedListeners()source public
prioritisedListeners( string $eventKey )
Возвращает слушателей для указанного ключа события, индексированного по приоритету
Параметры
- строка
$eventKey - Ключ события.
Возвращает
массивПодробное описание свойств
$_generalManagersource
protected static CakeEventManager
Глобальный экземпляр, используемый для отправки событий, прикрепленных из любого контекста
null
$_isGlobalsource
protected boolean
Внутренний флаг для различения общего менеджера от синглтона
false
$defaultPrioritysource
public static integer
Значение очереди по приоритету по умолчанию для новых прикрепленных обработчиков
10
© 2005–2017 The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/2.10/class-CakeEventManager.html