From f37dbfeaf522f70940f250a5084d273962cc2c69 Mon Sep 17 00:00:00 2001 From: Mark Huang Date: Fri, 6 Oct 2006 19:33:20 +0000 Subject: [PATCH] - no need to pass in slice_id_or_name --- PLC/Methods/DeleteSliceAttribute.py | 17 +++++++---------- PLC/Methods/UpdateSliceAttribute.py | 17 +++++++---------- 2 files changed, 14 insertions(+), 20 deletions(-) diff --git a/PLC/Methods/DeleteSliceAttribute.py b/PLC/Methods/DeleteSliceAttribute.py index 16d5104f..b1a9f493 100644 --- a/PLC/Methods/DeleteSliceAttribute.py +++ b/PLC/Methods/DeleteSliceAttribute.py @@ -23,26 +23,23 @@ class DeleteSliceAttribute(Method): accepts = [ PasswordAuth(), - Mixed(Slice.fields['slice_id'], - Slice.fields['name']), SliceAttribute.fields['slice_attribute_id'] ] returns = Parameter(int, '1 if successful') - def call(self, auth, slice_id_or_name, slice_attribute_id): - slices = Slices(self.api, [slice_id_or_name]).values() - if not slices: - raise PLCInvalidArgument, "No such slice" - slice = slices[0] - + def call(self, auth, slice_attribute_id): slice_attributes = SliceAttributes(self.api, [slice_attribute_id]).values() if not slice_attributes: raise PLCInvalidArgument, "No such slice attribute" slice_attribute = slice_attributes[0] - if slice_attribute['slice_attribute_id'] not in slice['slice_attribute_ids']: - raise PLCInvalidArgument, "Invalid slice attribute ID" + slices = Slices(self.api, [slice_attribute['slice_id']]).values() + if not slices: + raise PLCInvalidArgument, "No such slice" + slice = slices[0] + + assert slice_attribute['slice_attribute_id'] in slice['slice_attribute_ids'] if 'admin' not in self.caller['roles']: if self.caller['person_id'] in slice['person_ids']: diff --git a/PLC/Methods/UpdateSliceAttribute.py b/PLC/Methods/UpdateSliceAttribute.py index 2efd2807..425b7e6d 100644 --- a/PLC/Methods/UpdateSliceAttribute.py +++ b/PLC/Methods/UpdateSliceAttribute.py @@ -21,27 +21,24 @@ class UpdateSliceAttribute(Method): accepts = [ PasswordAuth(), - Mixed(SliceAttribute.fields['slice_id'], - SliceAttribute.fields['name']), SliceAttribute.fields['slice_attribute_id'], SliceAttribute.fields['value'] ] returns = Parameter(int, '1 if successful') - def call(self, auth, slice_id_or_name, slice_attribute_id, value): - slices = Slices(self.api, [slice_id_or_name]).values() - if not slices: - raise PLCInvalidArgument, "No such slice" - slice = slices[0] - + def call(self, auth, slice_attribute_id, value): slice_attributes = SliceAttributes(self.api, [slice_attribute_id]).values() if not slice_attributes: raise PLCInvalidArgument, "No such slice attribute" slice_attribute = slice_attributes[0] - if slice_attribute['slice_attribute_id'] not in slice['slice_attribute_ids']: - raise PLCInvalidArgument, "Invalid slice attribute ID" + slices = Slices(self.api, [slice_attribute['slice_id']]).values() + if not slices: + raise PLCInvalidArgument, "No such slice" + slice = slices[0] + + assert slice_attribute['slice_attribute_id'] in slice['slice_attribute_ids'] if 'admin' not in self.caller['roles']: if self.caller['person_id'] in slice['person_ids']: -- 2.47.0