読者です 読者をやめる 読者になる 読者になる

Middlewareにもconfig渡したくなりそう

Middlewareにもconfig渡すようにしてみると、使いやすいんじゃないかという気がした。イメージ的には、以下のようなイメージ。こうすると、handlerもconstructorに渡したくなるような気もする。。

sub build_request_handler {
    my ($self, $handler, $args) = @_;
    my $request_handler = $handler;
    for my $middleware ( @{ $self->middlewares } ) { 
       Mouse::load_class($middleware);
       $middleware->new($args->{config});
       $request_handler = $middleware->wrap($request_handler);
    }
    $request_handler;
}