summaryrefslogtreecommitdiff
path: root/lib/Net/Riak/Role
diff options
context:
space:
mode:
authorfranck cuny <franck@lumberjaph.net>2010-06-09 16:38:20 +0200
committerfranck cuny <franck@lumberjaph.net>2010-06-09 16:38:20 +0200
commitb797f187a22f38142ac3ac957f0e874ca492c2cd (patch)
tree7c754fc69ddf91e7c4475b84479d543c0e395727 /lib/Net/Riak/Role
downloadnet-riak-b797f187a22f38142ac3ac957f0e874ca492c2cd.tar.gz
initial import
Diffstat (limited to 'lib/Net/Riak/Role')
-rw-r--r--lib/Net/Riak/Role/REST.pm29
-rw-r--r--lib/Net/Riak/Role/UserAgent.pm20
2 files changed, 49 insertions, 0 deletions
diff --git a/lib/Net/Riak/Role/REST.pm b/lib/Net/Riak/Role/REST.pm
new file mode 100644
index 0000000..5daad84
--- /dev/null
+++ b/lib/Net/Riak/Role/REST.pm
@@ -0,0 +1,29 @@
+package Net::Riak::Role::REST;
+
+# ABSTRACT: role for REST operations
+
+use URI;
+use HTTP::Request;
+use Moose::Role;
+
+sub _build_path {
+ my ($self, $path) = @_;
+ $path = join('/', @$path);
+}
+
+sub _build_uri {
+ my ($self, $path, $params) = @_;
+
+ my $uri = URI->new($self->host);
+ $uri->path($self->_build_path($path));
+ $uri->query_form(%$params);
+ $uri;
+}
+
+sub request {
+ my ($self, $method, $path, $params) = @_;
+ my $uri = $self->_build_uri($path, $params);
+ my $request = HTTP::Request->new($method => $uri);
+}
+
+1;
diff --git a/lib/Net/Riak/Role/UserAgent.pm b/lib/Net/Riak/Role/UserAgent.pm
new file mode 100644
index 0000000..4c6cb1f
--- /dev/null
+++ b/lib/Net/Riak/Role/UserAgent.pm
@@ -0,0 +1,20 @@
+package Net::Riak::Role::UserAgent;
+
+# ABSTRACT: useragent for Net::Riak
+
+use Moose::Role;
+use LWP::UserAgent;
+
+has useragent => (
+ is => 'rw',
+ isa => 'LWP::UserAgent',
+ lazy => 1,
+ default => sub {
+ my $self = shift;
+ my $ua = LWP::UserAgent->new;
+ $ua->timeout(3);
+ $ua;
+ }
+);
+
+1;