def _needs_retry(self, attempts, operation_model, response=None,
                  caught_exception=None):
     event_name = 'needs-retry.%s.%s' % (self._endpoint_prefix,
                                         operation_model.name)
     responses = self._event_emitter.emit(
         event_name, response=response, endpoint=self,
         operation=operation_model, attempts=attempts,
         caught_exception=caught_exception)
     handler_response = first_non_none_response(responses)
     if handler_response is None:
         return False
     else:
         # Request needs to be retried, and we need to sleep
         # for the specified number of times.
         logger.debug("Response received to retry, sleeping for "
                      "%s seconds", handler_response)
         time.sleep(handler_response)
         return True
Exemplo n.º 2
0
 def _needs_retry(self,
                  attempts,
                  operation_model,
                  response=None,
                  caught_exception=None):
     event_name = 'needs-retry.%s.%s' % (self._endpoint_prefix,
                                         operation_model.name)
     responses = self._event_emitter.emit(event_name,
                                          response=response,
                                          endpoint=self,
                                          operation=operation_model,
                                          attempts=attempts,
                                          caught_exception=caught_exception)
     handler_response = first_non_none_response(responses)
     if handler_response is None:
         return False
     else:
         # Request needs to be retried, and we need to sleep
         # for the specified number of times.
         logger.debug(
             "Response received to retry, sleeping for "
             "%s seconds", handler_response)
         time.sleep(handler_response)
         return True
Exemplo n.º 3
0
 def emit_first_non_none_response(self, event_name, **kwargs):
     responses = self._events.emit(event_name, **kwargs)
     return first_non_none_response(responses)