summaryrefslogtreecommitdiff
path: root/ick2/apibase.py
diff options
context:
space:
mode:
authorLars Wirzenius <liw@liw.fi>2019-07-20 15:58:49 +0300
committerLars Wirzenius <liw@liw.fi>2019-08-03 21:06:50 +0300
commit03a559309b8790f6bc3ad3d92300a4c172910abb (patch)
tree13483c544b15f7f537a502a9bf722a05f72bb878 /ick2/apibase.py
parent076d144f0f5883a5c7c7c88f8b177f22d57c078a (diff)
downloadick2-03a559309b8790f6bc3ad3d92300a4c172910abb.tar.gz
Change: refer to resource by name, not id
Diffstat (limited to 'ick2/apibase.py')
-rw-r--r--ick2/apibase.py21
1 files changed, 10 insertions, 11 deletions
diff --git a/ick2/apibase.py b/ick2/apibase.py
index e18ebe2..b950c11 100644
--- a/ick2/apibase.py
+++ b/ick2/apibase.py
@@ -23,8 +23,7 @@ class APIbase:
def __init__(self, state):
assert (state is None or
- isinstance(state, ick2.MemoryPersistentState) or
- isinstance(state, ick2.MuckPersistentState))
+ isinstance(state, ick2.MemoryPersistentState))
self._trans = ick2.TransactionalState(state)
def get_routes(self, path):
@@ -182,11 +181,11 @@ class ResourceApiBase(APIbase):
body=body, token=token, kwargs=kwargs)
as_dict = self.mangle_new_resource(body)
- rid = self.get_resource_name(as_dict)
- if self._trans.has_resource(token, self._type_name, rid):
- raise ick2.ExistsAlready(rid)
+ name = self.get_resource_name(as_dict)
+ if self._trans.has_resource(token, self._type_name, name):
+ raise ick2.ExistsAlready(name)
- with self._trans.new(token, self._type_name, rid) as resource:
+ with self._trans.new(token, self._type_name, name) as resource:
resource.from_dict(as_dict)
return as_dict
@@ -198,11 +197,11 @@ class ResourceApiBase(APIbase):
raise NotImplementedError()
def update(self, body, name, token=None, **kwargs):
- rid = self.get_resource_name(body)
- if not self._trans.has_resource(token, self._type_name, rid):
- raise ick2.NotFound(kind=self._type_name, rid=rid)
+ name = self.get_resource_name(body)
+ if not self._trans.has_resource(token, self._type_name, name):
+ raise ick2.NotFound(kind=self._type_name, name=name)
- with self._trans.modify(token, self._type_name, rid) as resource:
+ with self._trans.modify(token, self._type_name, name) as resource:
as_dict = self.mangle_updated_resource(resource.as_dict(), body)
resource.from_dict(as_dict)
@@ -213,5 +212,5 @@ class ResourceApiBase(APIbase):
def delete(self, name, token=None, **kwargs):
if not self._trans.has_resource(token, self._type_name, name):
- raise ick2.NotFound(kind=self._type_name, rid=name)
+ raise ick2.NotFound(kind=self._type_name, name=name)
self._trans.remove_resource(token, self._type_name, name)