diff options
author | dakkar <dakkar@thenautilus.net> | 2016-10-23 15:34:04 +0100 |
---|---|---|
committer | dakkar <dakkar@thenautilus.net> | 2016-10-23 15:35:01 +0100 |
commit | 42b3ff3bd2894105231d5e3311cd561fb1ac55b3 (patch) | |
tree | e4425939e09f3e70b3f0bd0bdb4544027bc89bf5 /lib/IO | |
parent | test custom failure handler (diff) | |
download | IO-Async-PSGI-master.tar.gz IO-Async-PSGI-master.tar.bz2 IO-Async-PSGI-master.zip |
Diffstat (limited to 'lib/IO')
-rw-r--r-- | lib/IO/Async/PSGI.pm | 13 |
1 files changed, 3 insertions, 10 deletions
diff --git a/lib/IO/Async/PSGI.pm b/lib/IO/Async/PSGI.pm index 99f7d23..2154e2c 100644 --- a/lib/IO/Async/PSGI.pm +++ b/lib/IO/Async/PSGI.pm @@ -6,6 +6,7 @@ use Future; use HTTP::Status (); use Safe::Isa; use Plack::Middleware::HTTPExceptions; +use Class::Method::Modifiers 'install_modifier'; { my $logging_requestid_cb; @@ -23,7 +24,7 @@ use Plack::Middleware::HTTPExceptions; } our $_current_request_id; -around 'Future::wrap_cb' => sub { +install_modifier Future => around => wrap_cb => sub { my $orig = shift; my $cb = $orig->(@_); my $reqid = $_current_request_id; @@ -77,20 +78,12 @@ sub psgi_app { return sub { my ($responder) = @_; - $f->on_done( - sub{ - $responder->(@_); - # I'm not sure why I may have to set it again - # _invoke_logging_cb($reqid); - }, - ); + $f->on_done($responder); $f->on_fail( sub{ my ($exc,@details) = @_; my $response = $self->on_app_failure($env,$exc,@details); $responder->($response); - # I'm not sure why I may have to set it again - # _invoke_logging_cb($reqid); } ); |