RouteGroupInterface¶
Группа маршрутов: то, что получает замыкание в group().
- Full name:
\Selyusize\EventsRouter\Contract\Routing\RouteGroupInterface - Parent interfaces:
\Selyusize\EventsRouter\Contract\Routing\RouteCollectorInterface
Methods¶
add¶
Добавить middleware всем маршрутам группы, включая вложенные группы.
public add(class-string<\Selyusize\EventsRouter\Contract\Core\MiddlewareInterface>|\Selyusize\EventsRouter\Contract\Core\MiddlewareInterface $middleware): self
Добавленный последним выполняется первым, как в Slim. Если класс middleware не найден или не реализует MiddlewareInterface — InvalidRoute.
Parameters:
| Parameter | Type | Description |
|---|---|---|
$middleware |
class-string<\Selyusize\EventsRouter\Contract\Core\MiddlewareInterface>|\Selyusize\EventsRouter\Contract\Core\MiddlewareInterface |
Inherited methods¶
listen¶
Повесить одного слушателя на шаблон топика.
public listen(string $pattern, class-string<\Selyusize\EventsRouter\Contract\Core\ListenerInterface> $listener): \Selyusize\EventsRouter\Contract\Routing\RouteInterface
Несколько слушателей на одно событие — несколько вызовов listen().
Вызываются они строго в порядке объявления, приоритетов нет.
Если шаблон вместе с префиксами групп записан с ошибкой — InvalidTopicPattern. Если класс слушателя не найден или не реализует ListenerInterface — InvalidRoute.
Parameters:
| Parameter | Type | Description |
|---|---|---|
$pattern |
string | шаблон относительно префикса группы; в группе может быть пустым |
$listener |
class-string<\Selyusize\EventsRouter\Contract\Core\ListenerInterface> |
group¶
Группа маршрутов с общим префиксом и общими middleware.
public group(string $prefix, callable $routes): \Selyusize\EventsRouter\Contract\Routing\RouteGroupInterface
Пустой префикс — группа только ради общих middleware.
Parameters:
| Parameter | Type | Description |
|---|---|---|
$prefix |
string | |
$routes |
callable |