@override<EOL><INDENT>def handleRequest(self, obj, socket, multi=False):<DEDENT>
while <NUM_LIT:1>:<EOL><INDENT>try:<EOL><INDENT>msg = socket.recv_multipart(zmq.NOBLOCK)<EOL>method = msg[<NUM_LIT:0>].decode()<EOL>try:<EOL><INDENT>args = pickle.loads(msg[<NUM_LIT:1>], **pickle_options)<EOL><DEDENT>except ValueError as err:<EOL><INDENT>self._logger.notice('<STR_LIT>' %<EOL>(method, type(err), str(err)))<EOL>self._sendAnswer(socket, err)<EOL><DEDENT>self._logger.debug("<STR_LIT>" %<EOL>(method, str(args)))<EOL>try:<EOL><INDENT>res= getattr(obj, method).__call__(*args)<EOL><DEDENT>except Exception as e:<EOL><INDENT>self._logger.notice('<STR_LIT>' %<EOL>(method, str(args), type(e), str(e)))<EOL>res= e<EOL><DEDENT>self._sendAnswer(socket, res)<EOL><DEDENT>except zmq.ZMQError:<EOL><INDENT>return<EOL><DEDENT>except Exception as e:<EOL><INDENT>self._logger.error("<STR_LIT>" % str(e))<EOL><DEDENT>if not multi:<EOL><INDENT>break<EOL><DEDENT><DEDENT>
Handle one or more requests on a REP socket, with the format
sent by sendRequest()