deeper pass on xmlrpclib vs xmlrpc.client as well as configparser
[sfa.git] / sfa / dummy / dummyshell.py
index e89d56f..67007d7 100644 (file)
@@ -1,9 +1,9 @@
 import sys
-import xmlrpclib
 import socket
 from urlparse import urlparse
 
 from sfa.util.sfalogging import logger
+from sfa.util.py23 import xmlrpc_client
 
 class DummyShell:
     """
@@ -15,19 +15,19 @@ class DummyShell:
                     'GetTestbedInfo', 'GetNodes', 'GetSlices', 'GetUsers',
                     'DeleteNode', 'DeleteSlice', 'DeleteUser', 'DeleteKey', 'DeleteUserFromSlice', 
                     'DeleteSliceFromNodes',
-                    'UpdateNode', 'UpdateSlice', 'UpdateUser'
+                    'UpdateNode', 'UpdateSlice', 'UpdateUser',
                    ]
 
 
     def __init__ ( self, config ) :
         url = config.SFA_DUMMY_URL
-        self.proxy = xmlrpclib.Server(url, verbose = False, allow_none = True)
+        self.proxy = xmlrpc_client.ServerProxy(url, verbose = False, allow_none = True)
 
     def __getattr__(self, name):
         def func(*args, **kwds):
-            if not name in direct_calls:
-                raise Exception, "Illegal method call %s for DUMMY driver"%(name)
-            result=getattr(self.proxy, actual_name)(*args, **kwds)
+            if not name in DummyShell.direct_calls:
+                raise Exception("Illegal method call %s for DUMMY driver"%(name))
+            result=getattr(self.proxy, name)(*args, **kwds)
             logger.debug('DummyShell %s returned ... '%(name))
             return result
         return func