summaryrefslogtreecommitdiff
path: root/lib/Net/HTTP/Spore/Role
diff options
context:
space:
mode:
Diffstat (limited to 'lib/Net/HTTP/Spore/Role')
-rw-r--r--lib/Net/HTTP/Spore/Role/Debug.pm14
-rw-r--r--lib/Net/HTTP/Spore/Role/Request.pm7
2 files changed, 20 insertions, 1 deletions
diff --git a/lib/Net/HTTP/Spore/Role/Debug.pm b/lib/Net/HTTP/Spore/Role/Debug.pm
new file mode 100644
index 0000000..772373a
--- /dev/null
+++ b/lib/Net/HTTP/Spore/Role/Debug.pm
@@ -0,0 +1,14 @@
+package Net::HTTP::Spore::Role::Debug;
+
+use Moose::Role;
+
+has trace => (
+ is => 'rw',
+ isa => 'Bool',
+ lazy => 1,
+ default => sub { $ENV{SPORE_TRACE} ? 1 : 0; }
+);
+
+sub _trace_msg { print STDOUT $_[1]."\n" if $_[0]->trace; }
+
+1;
diff --git a/lib/Net/HTTP/Spore/Role/Request.pm b/lib/Net/HTTP/Spore/Role/Request.pm
index ddd52e6..7fbb290 100644
--- a/lib/Net/HTTP/Spore/Role/Request.pm
+++ b/lib/Net/HTTP/Spore/Role/Request.pm
@@ -38,7 +38,10 @@ sub http_request {
return $response;
}
- my $result = $self->request($request->finalize);
+ my $final = $request->finalize;
+ $self->_trace_msg("<- ".$request->method. " => ".$request->uri);
+
+ my $result = $self->request($final);
$response = $request->new_response(
$result->code,
@@ -46,6 +49,8 @@ sub http_request {
$result->content,
);
+ $self->_trace_msg("<- HTTP Status".$result->code );
+
map { $_->($response) } reverse @middlewares;
$response;