connectors/ERPC/__init__.py
changeset 3898 de4f17d737a9
parent 3887 2df45e4bd500
child 3908 32eb6e05008a
equal deleted inserted replaced
3897:fc3621302cfe 3898:de4f17d737a9
   104             lambda client_method, obj, args_wrapper, *args: client_method(obj, *args_wrapper(*args)))
   104             lambda client_method, obj, args_wrapper, *args: client_method(obj, *args_wrapper(*args)))
   105         args_wrapper = ArgsWrappers.get(method_name, lambda *x:x)
   105         args_wrapper = ArgsWrappers.get(method_name, lambda *x:x)
   106 
   106 
   107         def exception_wrapper(self, *args):
   107         def exception_wrapper(self, *args):
   108             try:
   108             try:
   109                 print("Clt "+method_name)
       
   110                 return return_wrapper(client_method, self, args_wrapper, *args)
   109                 return return_wrapper(client_method, self, args_wrapper, *args)
   111             except erpc.transport.ConnectionClosed as e:
   110             except erpc.transport.ConnectionClosed as e:
   112                 confnodesroot._SetConnector(None)
   111                 confnodesroot._SetConnector(None)
   113                 confnodesroot.logger.write_error(_("Connection lost!\n"))
   112                 confnodesroot.logger.write_error(_("Connection lost!\n"))
   114             except erpc.codec.CodecError as e:
   113             except erpc.codec.CodecError as e:
   116             except erpc.client.RequestError as e:
   115             except erpc.client.RequestError as e:
   117                 confnodesroot.logger.write_error(_("ERPC request error: %s\n") % e)                
   116                 confnodesroot.logger.write_error(_("ERPC request error: %s\n") % e)                
   118             except MissingCallException as e:
   117             except MissingCallException as e:
   119                 confnodesroot.logger.write_warning(_("Remote call not supported: %s\n") % e.message)
   118                 confnodesroot.logger.write_warning(_("Remote call not supported: %s\n") % e.message)
   120             except Exception as e:
   119             except Exception as e:
   121                 errmess = _("Exception calling remote PLC object fucntio %s:\n") % method_name \
   120                 errmess = _("Exception calling remote PLC object fucntion %s:\n") % method_name \
   122                           + traceback.format_exc()
   121                           + traceback.format_exc()
   123                 confnodesroot.logger.write_error(errmess + "\n")
   122                 confnodesroot.logger.write_error(errmess + "\n")
   124                 print(errmess)
       
   125                 confnodesroot._SetConnector(None)
   123                 confnodesroot._SetConnector(None)
   126 
   124 
   127             return self.PLCObjDefaults.get(method_name)
   125             return self.PLCObjDefaults.get(method_name)
   128         return exception_wrapper
   126         return exception_wrapper
   129 
   127