From 14bbc11240510e74c5ecfce53a18d35e26eb2f5f Mon Sep 17 00:00:00 2001 From: brettlangdon Date: Sat, 7 Sep 2013 18:21:02 -0400 Subject: [PATCH] properly incr/get counters --- riakcached/client.py | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/riakcached/client.py b/riakcached/client.py index 4d8db3d..24f5b42 100644 --- a/riakcached/client.py +++ b/riakcached/client.py @@ -48,13 +48,13 @@ class RiakClient(object): if self._pool: self._pool.close() - def get(self, key): + def get(self, key, counter=False): """ """ - response = self._request( - method="GET", - url="%s/riak/%s/%s" % (self.url, self.bucket, key), - ) + url = "%s/buckets/%s/keys/%s" % (self.url, self.bucket, key) + if counter: + url = "%s/buckets/%s/counters/%s" % (self.url, self.bucket, key) + response = self._request(method="GET", url=url) if response.status == 400: raise exceptions.RiakcachedBadRequest(response.data) elif response.status == 503: @@ -182,12 +182,14 @@ class RiakClient(object): """ response = self._request( method="POST", - url="%s/riak/%s/counters/%s" % (self.url, self.bucket, key), + url="%s/buckets/%s/counters/%s" % (self.url, self.bucket, key), body=str(value), ) if response.status == 409: raise exceptions.RiakcachedConflict(response.data) - return True + elif response.status == 400: + raise exceptions.RiakcachedBadRequest(response.data) + return response.status in (200, 201, 204, 300) def _connect(self): self._pool = urllib3.connection_from_url(self.url)