Класс ActionDispatcher
Этот класс обеспечивает совместимость с фильтрами диспетчера и взаимодействием с контроллерскими слоями.
В долгосрочной перспективе он должен быть просто диспетчером контроллера, но на данный момент он выполняет немного больше функций.
- Cake\Http\ActionDispatcher использует Cake\Event\EventDispatcherTrait
Краткое описание свойств
- Экземпляр фабрики контроллеров.
$factoryprotected - Присоединённые фильтры маршрутизации
$filtersprotected
Унаследованные свойства
Краткое описание методов
- __construct() publicКонструктор
- _invoke() protectedВызов действия контроллера и методов обертки.
- Добавление фильтра к этому диспетчеру.
- dispatch() publicОтправка запроса и ответа
- getFilters() publicПолучение подключённых фильтров.
Подробное описание методов
__construct()source public
__construct( Cake\Http\ControllerFactory|null $factory = null , Cake\Event\EventManager|null $eventManager = null , array $filters = [] )
Конструктор
Параметры
-
Cake\Http\ControllerFactory|null$factoryнеобязательный null - Экземпляр фабрики контроллеров.
-
Cake\Event\EventManager|null$eventManagerнеобязательный null - Менеджер событий, если нужно его инжектировать.
- массив
$filtersнеобязательный [] - Список фильтров для включения.
_invoke()source protected
_invoke( Cake\Controller\Controller $controller )
Вызов действия контроллера и методов обертки.
Параметры
-
Cake\Controller\Controller$controller - Контроллер для вызова.
Возвращаемое значение
Cake\Http\ResponseОтвет
Исключения
LogicExceptionЕсли действие контроллера возвращает не значение ответа.
addFilter()source public deprecated
addFilter( Cake\Event\EventListenerInterface $filter )
Добавление фильтра к этому диспетчеру.
Добавленный фильтр будет присоединён к менеджеру событий, используемому этим диспетчером.
Устаревшее
Доступно только для обратной совместимости с DispatchFiltersПараметры
-
Cake\Event\EventListenerInterface$filter Фильтр для подключения. Может быть любым EventListenerInterface. Обычно экземпляр \Cake\Routing\DispatcherFilter.
dispatch()source public
dispatch( Cake\Http\ServerRequest $request , Cake\Http\Response $response )
Отправка запроса и ответа
Параметры
-
Cake\Http\ServerRequest$request - Запрос для отправки.
-
Cake\Http\Response$response - Ответ для отправки.
Возвращаемое значение
Cake\Http\ResponseИзменённый/заменённый ответ.
Исключения
ReflectionExceptiongetFilters()source public
getFilters( )
Получение подключённых фильтров.
Возвращаемое значение
массивИспользуемые методы из Cake\Event\EventDispatcherTrait
dispatchEvent()source public
dispatchEvent( string $name , array|null $data = null , object|null $subject = null )
Обёртка для создания и отправки событий.
Возвращает отправленное событие.
Параметры
- строка
$name - Имя события.
- массив|null
$dataнеобязательно null Любое значение, которое вы хотите передать вместе с этим событием, чтобы его могли прочитать слушатели.
- объект|null
$subjectнеобязательно null Объект, к которому относится это событие ($this по умолчанию).
Возвращает
Cake\Event\EventeventManager()source public deprecated
eventManager( Cake\Event\EventManager $eventManager = null )
Возвращает экземпляр менеджера Cake\Event\EventManager для этого объекта.
Вы можете использовать этот экземпляр для регистрации новых слушателей или обратных вызовов для событий объекта, или создавать свои собственные события и вызывать их по своему усмотрению.
Устаревшее
3.5.0 Используйте getEventManager()/setEventManager() вместо этого.Параметры
-
Cake\Event\EventManager$eventManagerнеобязательно null - менеджер событий для установки
Возвращает
Cake\Event\EventManagergetEventManager()source public
getEventManager( )
Возвращает экземпляр менеджера Cake\Event\EventManager для этого объекта.
Вы можете использовать этот экземпляр для регистрации новых слушателей или обратных вызовов для событий объекта, или создавать свои собственные события и вызывать их по своему усмотрению.
Возвращает
Cake\Event\EventManagersetEventManager()source public
setEventManager( Cake\Event\EventManager $eventManager )
Возвращает экземпляр менеджера Cake\Event\EventManager для этого объекта.
Вы можете использовать этот экземпляр для регистрации новых слушателей или обратных вызовов для событий объекта, или создавать свои собственные события и вызывать их по своему усмотрению.
Параметры
-
Cake\Event\EventManager$eventManager - менеджер событий для установки
Возвращает
$this
Подробное описание свойств
© 2005–present 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/3.7/class-Cake.Http.ActionDispatcher.html