summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authordakkar <dakkar@thenautilus.net>2016-10-23 15:34:04 +0100
committerdakkar <dakkar@thenautilus.net>2016-10-23 15:35:01 +0100
commit42b3ff3bd2894105231d5e3311cd561fb1ac55b3 (patch)
treee4425939e09f3e70b3f0bd0bdb4544027bc89bf5 /lib
parenttest custom failure handler (diff)
downloadIO-Async-PSGI-master.tar.gz
IO-Async-PSGI-master.tar.bz2
IO-Async-PSGI-master.zip
logging & request id workHEADmaster
Diffstat (limited to 'lib')
-rw-r--r--lib/IO/Async/PSGI.pm13
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);
}
);