AM
process()
оставить, добавить MiddlewareInterface
Выбрасывает исключение, если стек пустdispatch()
переименовать на handle()
, вернув интерфейс RequestHandlerInterfaceвыбрасывает исключение, если нет
$nextHandler
addMiddleware()
переименовать в add()
из конструктора убрать массив мидлварей, он только путаетзачем нужен MiddlewareInterface? чтобы помещать один трубопровод в другой, достраивать трубопровод из отрезков
Откуда они берутся?
У меня такой юзкейс: есть два приложения, отличающиеся доменом на 3-м уровне. Для каждого из них отличается низ стека пайплайна, а начало общее. Поэтому в зависимости от домена берётся нужный пайплайн и к нему достраивается пайплайн общий
зачем нужен RequestHandlerInterface? Да потому что по факту диспетчер это и есть RequestHandlerInterface - ты туда даёшь запрос, получаешь ответ