だとすると、mapleのすべてをフィルタで処理しようとする設計は、すべてをAOPでやろうということになってしまうのか。
おそらく、上記の遷移を扱うところが、メインのプログラムであって、それにフィルタを噛ましていくようなイメージになるのであろう。
とすると、ビューやバリデーションまでフィルタにするのはやりすぎとも言えるのではないだろうか。それらは、フィルタとは別けてコントローラのはっきりとした軸とする必要が有るだろう。
話は微妙に関係無いですが、MojaviもActionの実行自体ExecutionFilterというフィルタが行っている。はたから見ると単にFilterChainが走って終了。 何かに層を織り込むというより層だけしか無い。
Filterだと手続き的に追加していけるし入れ替えも簡単なので良いのかもしれない。
「Aが動くには先にBが動いている必要がある」みたいな前提条件を切り離す方法は無いのかな。