def send_reply(self, request, result): """ Send the reply if requested. :param request: The received request. :type request: Document :param result: The request result. :type result: object """ sn = request.sn data = request.data ts = request.ts now = time() duration = Timer(ts, now) address = request.replyto log.info('sn=%s processed in: %s', sn, duration) if not address: return try: self.producer.send( address, sn=sn, data=data, result=result, timestamp=timestamp()) except Exception: log.exception('send failed: %s', result)
def send_reply(self, request, result): """ Send the reply if requested. :param request: The received request. :type request: Document :param result: The request result. :type result: object """ sn = request.sn data = request.data ts = request.ts now = time() duration = Timer(ts, now) address = request.replyto log.info('Request: %s processed in: %s', sn, duration) if not address: return try: self.producer.send(address, sn=sn, data=data, result=result, timestamp=timestamp()) except Exception: log.exception('Send: reply, failed: %s', result)
def _send(self, request, status, **details): """ Send a status update. :param request: The received (json) request. :type request: Document :param status: The status to send ('accepted'|'rejected') :type status: str """ address = request.replyto if not address: return try: producer = Producer(self.url) producer.authenticator = self.authenticator producer.open() try: producer.send( address, sn=request.sn, data=request.data, status=status, timestamp=timestamp(), **details) finally: producer.close() except Exception: log.exception('send (%s), failed', status)
def send_started(self, request): """ Send the a status update if requested. :param request: The received request. :type request: Document """ sn = request.sn data = request.data address = request.replyto if not address: return try: self.producer.send(address, sn=sn, data=data, status='started', timestamp=timestamp()) except Exception: log.exception('Send: started, failed')
def send_started(self, request): """ Send the a status update if requested. :param request: The received request. :type request: Document """ sn = request.sn data = request.data address = request.replyto if not address: return try: self.producer.send( address, sn=sn, data=data, status='started', timestamp=timestamp()) except Exception: log.exception('send (started), failed')
def test_timestamp(self, dt): dt.utcnow.return_value = datetime(2014, 12, 25, 9, 30, 0) ts = timestamp() self.assertEqual(ts, '2014-12-25T09:30:00Z')