From: Marc Fiuczynski Date: Tue, 17 Mar 2009 14:52:07 +0000 (+0000) Subject: clean up callable() implementation and be more verbose when there is an ImportError X-Git-Tag: PLCAPI-4.3-4~8 X-Git-Url: http://git.onelab.eu/?a=commitdiff_plain;h=c58d1a0655029d091083028ce12e6bc0dd242143;p=plcapi.git clean up callable() implementation and be more verbose when there is an ImportError --- diff --git a/PLC/API.py b/PLC/API.py index 0710d950..8b85bd00 100644 --- a/PLC/API.py +++ b/PLC/API.py @@ -143,14 +143,13 @@ class PLCAPI: try: classname = method.split(".")[-1] if method in self.native_methods: - module = __import__("PLC.Methods." + method, globals(), locals(), [classname]) - return getattr(module, classname)(self) + fullpath="PLC.Methods." + method else: fullpath=self.other_methods_map[method] - module = __import__(fullpath, globals(), locals(), [classname]) - return getattr(module, classname)(self) + module = __import__(fullpath, globals(), locals(), [classname]) + return getattr(module, classname)(self) except ImportError, AttributeError: - raise PLCInvalidAPIMethod, method + raise PLCInvalidAPIMethod, "import error %s for %s" % (AttributeError,fullpath) def call(self, source, method, *args): """