summaryrefslogtreecommitdiff
path: root/ick2/trans.py
diff options
context:
space:
mode:
Diffstat (limited to 'ick2/trans.py')
-rw-r--r--ick2/trans.py7
1 files changed, 4 insertions, 3 deletions
diff --git a/ick2/trans.py b/ick2/trans.py
index b35cf50..119f277 100644
--- a/ick2/trans.py
+++ b/ick2/trans.py
@@ -60,6 +60,8 @@ class TransactionalState:
self.state = state
def new(self, token, kind, name):
+ if self.state.has_resource(token, kind, name):
+ raise ick2.ExistsAlaready(name)
return TransactionalResource(token, self.state, kind, name)
def modify(self, token, kind, name):
@@ -67,9 +69,6 @@ class TransactionalState:
raise ick2.NotFound(kind=kind, name=name)
return TransactionalResource(token, self.state, kind, name)
- def has_resource(self, token, kind, name):
- return self.state.has_resource(token, kind, name)
-
def get_resource(self, token, kind, name):
return self.state.get_resource(token, kind, name)
@@ -77,4 +76,6 @@ class TransactionalState:
return self.state.get_resources(token, kind)
def remove_resource(self, token, kind, name):
+ if not self.state.has_resource(token, kind, name):
+ raise ick2.NotFound(kind=kind, name=name)
self.state.remove_resource(token, kind, name)