summaryrefslogtreecommitdiff
path: root/lib/Net/Riak
diff options
context:
space:
mode:
authorRobin Edwards <robin.ge@gmail.com>2010-11-09 10:01:13 +0000
committerRobin Edwards <robin.ge@gmail.com>2010-11-09 10:01:13 +0000
commit322d58a5ed9e71b5c9708e53798803c28ad5df62 (patch)
tree6c944f73acb868401e127edf9c8438bcbf495e5c /lib/Net/Riak
parentadded expected status message (diff)
downloadnet-riak-322d58a5ed9e71b5c9708e53798803c28ad5df62.tar.gz
added useragent timeout parameter
Diffstat (limited to '')
-rw-r--r--lib/Net/Riak.pm10
-rw-r--r--lib/Net/Riak/Client.pm6
-rw-r--r--lib/Net/Riak/Role/UserAgent.pm4
3 files changed, 18 insertions, 2 deletions
diff --git a/lib/Net/Riak.pm b/lib/Net/Riak.pm
index 124279f..7412adb 100644
--- a/lib/Net/Riak.pm
+++ b/lib/Net/Riak.pm
@@ -33,7 +33,11 @@ sub bucket {
=head1 SYNOPSIS
- my $client = Net::Riak->new(host => 'http://10.0.0.40:8098');
+ my $client = Net::Riak->new(
+ host => 'http://10.0.0.40:8098',
+ ua_timeout => 900
+ );
+
my $bucket = $client->bucket('blog');
my $obj = $bucket->new_object('new_post', {title => 'foo', content => 'bar'});
$obj->store;
@@ -104,6 +108,10 @@ client_id for this client
=back
+=item B<ua_timeout>
+
+timeout for L<LWP::UserAgent> in seconds, defaults to 3.
+
=head1 METHODS
=head2 bucket
diff --git a/lib/Net/Riak/Client.pm b/lib/Net/Riak/Client.pm
index dbe3c16..4d14338 100644
--- a/lib/Net/Riak/Client.pm
+++ b/lib/Net/Riak/Client.pm
@@ -38,6 +38,12 @@ has http_response => (
handles => ['is_success']
);
+has ua_timeout => (
+ is => 'rw',
+ isa => 'Int',
+ default => 3
+);
+
with 'Net::Riak::Role::UserAgent';
with qw/
Net::Riak::Role::REST
diff --git a/lib/Net/Riak/Role/UserAgent.pm b/lib/Net/Riak/Role/UserAgent.pm
index 123a378..122bf0c 100644
--- a/lib/Net/Riak/Role/UserAgent.pm
+++ b/lib/Net/Riak/Role/UserAgent.pm
@@ -18,7 +18,9 @@ has useragent => (
$opts{MaxLineLength} = 65_536;
@LWP::Protocol::http::EXTRA_SOCK_OPTS = %opts;
- my $ua = LWP::UserAgent->new;
+ my $ua = LWP::UserAgent->new(
+ timeout => $self->ua_timeout
+ );
$ua;
}
);