-
- added_attributes = filter(lambda x: 'slice_tag_id' not in x, attributes)
- updated_attributes = filter(lambda x: 'slice_tag_id' in x, attributes)
-
- for added_attribute in added_attributes:
- if 'tag_type' in added_attribute:
- type = added_attribute['tag_type']
- elif 'tag_type_id' in added_attribute:
- type = added_attribute['tag_type_id']
- else:
- raise PLCInvalidArgument, "Must specify tag_type or tag_type_id"
-
- if 'value' in added_attribute:
- value = added_attribute['value']
- else:
- raise PLCInvalidArgument, "Must specify a value"
-
- if 'node_id' in added_attribute:
- node_id = added_attribute['node_id']
- else:
- node_id = None
-
- if 'nodegroup_id' in added_attribute:
- nodegroup_id = added_attribute['nodegroup_id']
- else:
- nodegroup_id = None
-
- AddSliceTag.__call__(AddSliceTag(self.api), auth, self['slice_id'], type, value, node_id, nodegroup_id)
- for updated_attribute in updated_attributes:
- attribute_id = updated_attribute.pop('slice_tag_id')
- if attribute_id not in self['slice_tag_ids']:
- raise PLCInvalidArgument, "Attribute doesnt belong to this slice"
- else:
- UpdateSliceTag.__call__(UpdateSliceTag(self.api), auth, attribute_id, updated_attribute)
-
+
+ added_attributes = filter(lambda x: 'slice_tag_id' not in x, attributes)
+ updated_attributes = filter(lambda x: 'slice_tag_id' in x, attributes)
+
+ for added_attribute in added_attributes:
+ if 'tag_type' in added_attribute:
+ type = added_attribute['tag_type']
+ elif 'tag_type_id' in added_attribute:
+ type = added_attribute['tag_type_id']
+ else:
+ raise PLCInvalidArgument, "Must specify tag_type or tag_type_id"
+
+ if 'value' in added_attribute:
+ value = added_attribute['value']
+ else:
+ raise PLCInvalidArgument, "Must specify a value"
+
+ if 'node_id' in added_attribute:
+ node_id = added_attribute['node_id']
+ else:
+ node_id = None
+
+ if 'nodegroup_id' in added_attribute:
+ nodegroup_id = added_attribute['nodegroup_id']
+ else:
+ nodegroup_id = None
+
+ AddSliceTag.__call__(AddSliceTag(self.api), auth, self['slice_id'], type, value, node_id, nodegroup_id)
+ for updated_attribute in updated_attributes:
+ attribute_id = updated_attribute.pop('slice_tag_id')
+ if attribute_id not in self['slice_tag_ids']:
+ raise PLCInvalidArgument, "Attribute doesnt belong to this slice"
+ else:
+ UpdateSliceTag.__call__(UpdateSliceTag(self.api), auth, attribute_id, updated_attribute)
+