summary refs log tree commit diff
path: root/lib/Net/Riak/Role
diff options
context:
space:
mode:
authorRobin Edwards <robin.ge@gmail.com>2010-10-05 14:25:13 +0100
committerRobin Edwards <robin.ge@gmail.com>2010-10-05 15:02:28 +0100
commit1ae712311b2dbc48a8af751b1f81f9fb3203ed25 (patch)
tree5cb67c37c974024b8749fc3caacc96986e0c4e41 /lib/Net/Riak/Role
parentmerged doc (diff)
downloadnet-riak-1ae712311b2dbc48a8af751b1f81f9fb3203ed25.tar.gz
requests and responses now stored for debugging
Diffstat (limited to 'lib/Net/Riak/Role')
-rw-r--r--lib/Net/Riak/Role/REST.pm20
1 files changed, 18 insertions, 2 deletions
diff --git a/lib/Net/Riak/Role/REST.pm b/lib/Net/Riak/Role/REST.pm
index 1a18ff7..136ea88 100644
--- a/lib/Net/Riak/Role/REST.pm
+++ b/lib/Net/Riak/Role/REST.pm
@@ -6,6 +6,10 @@ use URI;
 use HTTP::Request;
 use Moose::Role;
 
+requires 'http_request';
+requires 'http_response';
+requires 'useragent';
+
 sub _build_path {
     my ($self, $path) = @_;
     $path = join('/', @$path);
@@ -20,10 +24,22 @@ sub _build_uri {
     $uri;
 }
 
-sub request {
+# constructs a HTTP::Request
+sub new_request {
     my ($self, $method, $path, $params) = @_;
     my $uri = $self->_build_uri($path, $params);
-    HTTP::Request->new($method => $uri);
+    return HTTP::Request->new($method => $uri);
+}
+
+# makes a HTTP::Request returns and stores a HTTP::Response
+sub send_request {
+    my ($self, $req) = @_;
+
+    $self->http_request($req);
+    my $r = $self->useragent->request($req);
+    $self->http_response($r);
+
+    return $r;
 }
 
 1;