X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=PLC%2FLegacy%2FNodeNetworks.py;h=0c34ea730227fb0382bb776df5f12e2e53f29b4b;hb=da587f8598c5e22c951cb0f0278e82a0f0f07462;hp=7e805e50bfeb4b8ee12f6fed15021db3d54a73d7;hpb=196d474841ff8cbfed8ddff43f01ffb7933a15d8;p=plcapi.git diff --git a/PLC/Legacy/NodeNetworks.py b/PLC/Legacy/NodeNetworks.py index 7e805e50..0c34ea73 100644 --- a/PLC/Legacy/NodeNetworks.py +++ b/PLC/Legacy/NodeNetworks.py @@ -38,7 +38,7 @@ def patch_legacy_arg (arg): return dict ( [ (rename(k),v) for (k,v) in arg.iteritems() ] ) return arg -def factory (legacyname): +def legacy_method (legacyname): # new method name newname=legacyname.replace("NodeNetwork","Interface") # locate new class @@ -60,19 +60,10 @@ def factory (legacyname): return legacyclass -# this does not work, as __module__ is not yet supported -#for legacyname in methods: -# setattr(__module__,legacyname,factory(legacyname)) -# this does not work either, as we are importing the module so we cannot locate it yet -#for legacyname in methods: -# this_module = import_deep(__name__) -# setattr(__module__,legacyname,factory(legacyname)) +import sys +current_module=sys.modules[__name__] + +# attach +for legacyname in methods: + setattr(current_module,legacyname,legacy_method(legacyname)) -AddNodeNetwork=factory("AddNodeNetwork") -AddNodeNetworkSetting=factory("AddNodeNetworkSetting") -DeleteNodeNetwork=factory("DeleteNodeNetwork") -DeleteNodeNetworkSetting=factory("DeleteNodeNetworkSetting") -GetNodeNetworkSettings=factory("GetNodeNetworkSettings") -GetNodeNetworks=factory("GetNodeNetworks") -UpdateNodeNetwork=factory("UpdateNodeNetwork") -UpdateNodeNetworkSetting=factory("UpdateNodeNetworkSetting")