From f743f767969331089097397053f21dcd4a442ef0 Mon Sep 17 00:00:00 2001 From: Robin Edwards Date: Tue, 9 Nov 2010 09:45:57 +0000 Subject: added delete_object method --- lib/Net/Riak/Bucket.pm | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'lib/Net/Riak/Bucket.pm') diff --git a/lib/Net/Riak/Bucket.pm b/lib/Net/Riak/Bucket.pm index 8f263cf..0e7aa63 100644 --- a/lib/Net/Riak/Bucket.pm +++ b/lib/Net/Riak/Bucket.pm @@ -65,6 +65,15 @@ sub get { $obj; } +sub delete_object { + my ($self, $key) = @_; + Net::Riak::Object->new( + client => $self->client, + bucket => $self, + key => $key + )->delete; +} + sub set_property { my ($self, $key, $value) = @_; $self->set_properties({$key => $value}); @@ -159,6 +168,8 @@ sub new_object { my $obj2 = $bucket->new_object('foo2', {...}); $object->store; + $bucket->delete_object($key); + =head1 DESCRIPTION The L object allows you to access and change information about a Riak bucket, and provides methods to create or retrieve objects within the bucket. @@ -209,6 +220,12 @@ Create a new L object. Additional Object constructor argument Retrieve an object from Riak. +=item delete_object + + $bucket->delete_object($key); + +Delete an object by key + =item n_val my $n_val = $bucket->n_val; -- cgit v1.2.3 From 4df3b390870869295cfe1f5eb09721f01e8a1c0a Mon Sep 17 00:00:00 2001 From: Simon Wistow Date: Fri, 28 Jan 2011 11:14:58 -0800 Subject: Allow creating of new_objects without keys --- lib/Net/Riak/Bucket.pm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'lib/Net/Riak/Bucket.pm') diff --git a/lib/Net/Riak/Bucket.pm b/lib/Net/Riak/Bucket.pm index 0e7aa63..cc48149 100644 --- a/lib/Net/Riak/Bucket.pm +++ b/lib/Net/Riak/Bucket.pm @@ -144,13 +144,14 @@ sub set_properties { sub new_object { my ($self, $key, $data, @args) = @_; - my $object = Net::Riak::Object->new( - key => $key, + my %opts = ( data => $data, bucket => $self, client => $self->client, @args, ); + $opts{key} = $key if defined $key; + my $object = Net::Riak::Object->new(%opts); $object; } -- cgit v1.2.3 From 40906966a4262bac5feaf4f0799f1a24c1308649 Mon Sep 17 00:00:00 2001 From: Simon Wistow Date: Fri, 28 Jan 2011 11:19:47 -0800 Subject: Docs --- lib/Net/Riak/Bucket.pm | 2 ++ 1 file changed, 2 insertions(+) (limited to 'lib/Net/Riak/Bucket.pm') diff --git a/lib/Net/Riak/Bucket.pm b/lib/Net/Riak/Bucket.pm index cc48149..2bc334e 100644 --- a/lib/Net/Riak/Bucket.pm +++ b/lib/Net/Riak/Bucket.pm @@ -215,6 +215,8 @@ DW value setting for this client (default 2) Create a new L object. Additional Object constructor arguments can be passed after $data. If $data is a reference and no explicit Object content_type is given in @args, the data will be serialised and stored as JSON. +If $key is passed as C then an autogenerated key will be provided by Riak. + =item get my $obj = $bucket->get($key, [$r]); -- cgit v1.2.3