ну да, можно оставить add
По названию класса непонятно что там add. Если бы там было MiddlewareCollection, то ок, тут понятно. А в MiddlewareDispatcher хз, может и обработчики событий какие-то добавляются. Ну и плюс в роутере так уже назван метод, логично придерживаться одного стиля в одинаковых задачах.