calculateRetryDelay static method

int calculateRetryDelay(
  1. int attemptNumber
)

Calcula o delay de retry usando backoff exponencial

attemptNumber: Número da tentativa atual (começando em 1) Retorna o delay em segundos

Implementation

static int calculateRetryDelay(int attemptNumber) {
  if (attemptNumber <= 0) return baseRetryDelaySeconds;

  // Backoff exponencial: baseDelay * 2^(attempt-1)
  final exponentialDelay = baseRetryDelaySeconds * (1 << (attemptNumber - 1));

  // Limitar ao delay máximo
  return exponentialDelay > maxRetryDelaySeconds
      ? maxRetryDelaySeconds
      : exponentialDelay;
}