summaryrefslogtreecommitdiff
path: root/lib/Net/HTTP/Spore/Middleware.pm
diff options
context:
space:
mode:
Diffstat (limited to 'lib/Net/HTTP/Spore/Middleware.pm')
-rw-r--r--lib/Net/HTTP/Spore/Middleware.pm8
1 files changed, 6 insertions, 2 deletions
diff --git a/lib/Net/HTTP/Spore/Middleware.pm b/lib/Net/HTTP/Spore/Middleware.pm
index 0b8584c..6d284b5 100644
--- a/lib/Net/HTTP/Spore/Middleware.pm
+++ b/lib/Net/HTTP/Spore/Middleware.pm
@@ -18,13 +18,17 @@ sub response_cb {
}
sub wrap {
- my ($self, @args) = @_;
+ my ($self, $cond, @args) = @_;
if (!ref $self) {
$self = $self->new(@args);
}
+
return sub {
- $self->call(@_);
+ my $request = shift;
+ if ($cond->($request)) {
+ $self->call($request, @_);
+ }
};
}