X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=PLC%2FMethods%2FAddInterfaceSetting.py;h=c9e99f68fa7e642ec08586c761b77654c3a5e3b9;hb=eafc0194bc0dde66e31315a72f2cb05775c9800b;hp=bc2c6217740f85771c8816e80839fa9bf46b5685;hpb=b3c3e1029ce254558c7135ef114f72c986093aad;p=plcapi.git diff --git a/PLC/Methods/AddInterfaceSetting.py b/PLC/Methods/AddInterfaceSetting.py index bc2c621..c9e99f6 100644 --- a/PLC/Methods/AddInterfaceSetting.py +++ b/PLC/Methods/AddInterfaceSetting.py @@ -8,7 +8,7 @@ from PLC.Method import Method from PLC.Parameter import Parameter, Mixed from PLC.Auth import Auth -from PLC.InterfaceSettingTypes import InterfaceSettingType, InterfaceSettingTypes +from PLC.TagTypes import TagType, TagTypes from PLC.InterfaceSettings import InterfaceSetting, InterfaceSettings from PLC.Interfaces import Interface, Interfaces @@ -21,7 +21,7 @@ class AddInterfaceSetting(Method): to the specified value. In general only tech(s), PI(s) and of course admin(s) are allowed to - do the change, but this is defined in the interface setting type object. + do the change, but this is defined in the tag type object. Returns the new interface_setting_id (> 0) if successful, faults otherwise. @@ -33,8 +33,8 @@ class AddInterfaceSetting(Method): Auth(), # no other way to refer to a interface InterfaceSetting.fields['interface_id'], - Mixed(InterfaceSettingType.fields['interface_setting_type_id'], - InterfaceSettingType.fields['name']), + Mixed(TagType.fields['tag_type_id'], + TagType.fields['tagname']), InterfaceSetting.fields['value'], ] @@ -43,25 +43,25 @@ class AddInterfaceSetting(Method): object_type = 'Interface' - def call(self, auth, interface_id, interface_setting_type_id_or_name, value): + def call(self, auth, interface_id, tag_type_id_or_name, value): interfaces = Interfaces(self.api, [interface_id]) if not interfaces: raise PLCInvalidArgument, "No such interface %r"%interface_id interface = interfaces[0] - interface_setting_types = InterfaceSettingTypes(self.api, [interface_setting_type_id_or_name]) - if not interface_setting_types: - raise PLCInvalidArgument, "No such interface setting type %r"%interface_setting_type_id_or_name - interface_setting_type = interface_setting_types[0] + tag_types = TagTypes(self.api, [tag_type_id_or_name]) + if not tag_types: + raise PLCInvalidArgument, "No such tag type %r"%tag_type_id_or_name + tag_type = tag_types[0] # checks for existence - does not allow several different settings conflicts = InterfaceSettings(self.api, {'interface_id':interface['interface_id'], - 'interface_setting_type_id':interface_setting_type['interface_setting_type_id']}) + 'tag_type_id':tag_type['tag_type_id']}) if len(conflicts) : raise PLCInvalidArgument, "Interface %d already has setting %d"%(interface['interface_id'], - interface_setting_type['interface_setting_type_id']) + tag_type['tag_type_id']) # check permission : it not admin, is the user affiliated with the right site if 'admin' not in self.caller['roles']: @@ -73,14 +73,14 @@ class AddInterfaceSetting(Method): if self.caller['person_id'] not in site['person_ids']: raise PLCPermissionDenied, "Not a member of the hosting site %s"%site['abbreviated_site'] - required_min_role = interface_setting_type ['min_role_id'] + required_min_role = tag_type ['min_role_id'] if required_min_role is not None and \ min(self.caller['role_ids']) > required_min_role: raise PLCPermissionDenied, "Not allowed to modify the specified interface setting, requires role %d",required_min_role interface_setting = InterfaceSetting(self.api) interface_setting['interface_id'] = interface['interface_id'] - interface_setting['interface_setting_type_id'] = interface_setting_type['interface_setting_type_id'] + interface_setting['tag_type_id'] = tag_type['tag_type_id'] interface_setting['value'] = value interface_setting.sync()