Ну смотри, это не может быть декоратор, так как ты возвращаешь разные типы. Например валидатор возвращает некий результат (массив или класс) и его надо преобразовать в разные виды. Это ближе к паттеру мост, что как раз в MVC, есть данные, а есть View.
Т.е. я или бы предложил как выше, сделать несколько классов ErrorResponse, Например StringValidateResponse, ArrayValidateResponse, (Можешь назвать по другому) и их создавать в контроллерах. Они оба принимают ошибки валидатора, а не сам валидтор. Или же Сделать какие то Трансформеры, как ты это и делал. Но как ты и сказал, 2 класса в DI для валидатора - не очень.
Короче главное - это название нихера не понятное. Ну и не декоратор.
Честно говоря, от моего редьюсера это мало чем будет отличаться. Лучше я оставлю как есть. Вполне нормально и понятно. Без лишней хуйни с этими нев и прочим.
The Ant
Кирилл
Павел
Пилот