X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=PLC%2FMethods%2FUpdateSliceAttributeType.py;h=3b63cbd640c45dde9ff2eab4b70116331eb8e2cf;hb=5e02c827f0b3c3c21dcaf3892aa6561dedc4b3cc;hp=df3224cf06162ade79fffbb6fc0320e5ac7f8256;hpb=1f8c38dd1357c93e4be8d94456b7274a591d2db4;p=plcapi.git diff --git a/PLC/Methods/UpdateSliceAttributeType.py b/PLC/Methods/UpdateSliceAttributeType.py index df3224c..3b63cbd 100644 --- a/PLC/Methods/UpdateSliceAttributeType.py +++ b/PLC/Methods/UpdateSliceAttributeType.py @@ -1,42 +1,13 @@ -from PLC.Faults import * -from PLC.Method import Method -from PLC.Parameter import Parameter, Mixed -from PLC.SliceAttributeTypes import SliceAttributeType, SliceAttributeTypes -from PLC.Auth import Auth -can_update = lambda (field, value): field in \ - ['name', 'description', 'min_role_id'] - -class UpdateSliceAttributeType(Method): - """ - Updates the parameters of an existing attribute with the values in - attribute_type_fields. - - Returns 1 if successful, faults otherwise. - """ - - roles = ['admin'] - - attribute_type_fields = dict(filter(can_update, SliceAttributeType.fields.items())) - - accepts = [ - Auth(), - Mixed(SliceAttributeType.fields['attribute_type_id'], - SliceAttributeType.fields['name']), - attribute_type_fields - ] - - returns = Parameter(int, '1 if successful') - - def call(self, auth, attribute_type_id_or_name, attribute_type_fields): - attribute_type_fields = dict(filter(can_update, attribute_type_fields.items())) - - attribute_types = SliceAttributeTypes(self.api, [attribute_type_id_or_name]).values() - if not attribute_types: - raise PLCInvalidArgument, "No such attribute" - attribute_type = attribute_types[0] - - attribute_type.update(attribute_type_fields) - attribute_type.sync() - - return 1 +from PLC.v42Legacy import patch +from PLC.v42LegacyAttributeTypes import v42rename, v43rename +from PLC.Methods.UpdateTagType import UpdateTagType +class UpdateSliceAttributeType(UpdateTagType): + """ Legacy version of UpdateTagType. """ + skip_typecheck = True + status = "deprecated" + def call(self, auth, *args, **kwds): + newargs=[patch(x,v42rename) for x in args] + newkwds=dict ( [ (k,patch(v,v42rename)) for (k,v) in kwds.iteritems() ] ) + results = UpdateTagType.call(self,auth,*newargs,**newkwds) + return patch(results,v43rename)