Compartilhar via


RetryPolicy Classe

public class RetryPolicy implements RetryPolicyFactory

Classe abstrata que representa uma política de repetição.

Resumo do campo

Modificador e tipo Campo e descrição
final int DEFAULT_CLIENT_BACKOFF

Representa o intervalo de retirada do cliente padrão, em milissegundos.

final int DEFAULT_CLIENT_RETRY_COUNT

Representa a contagem de repetições de cliente padrão.

final int DEFAULT_MAX_BACKOFF

Representa o intervalo de retirada máximo padrão, em milissegundos.

final int DEFAULT_MIN_BACKOFF

Representa o intervalo de retirada mínimo padrão, em milissegundos.

int deltaBackoffIntervalInMs

Representa o intervalo de retirada realizado, em milissegundos.

Date lastPrimaryAttempt

Representa a hora da última tentativa de solicitação para o local primário.

Date lastSecondaryAttempt

Representa a hora da última tentativa de solicitação para o local secundário.

int maximumAttempts

Representa as tentativas máximas que a política de repetição deve tentar.

Resumo do Construtor

Construtor Description
RetryPolicy()

Cria uma instância da classe .

RetryPolicy(final int deltaBackoff, final int maxAttempts)

Cria uma instância da classe usando a retirada delta especificada e o máximo de tentativas de repetição.

Resumo do método

Modificador e tipo Método e descrição
abstract RetryInfo evaluate(RetryContext retryContext, OperationContext operationContext)

Determina se a operação deve ser repetida e especifica o intervalo até a próxima repetição.

boolean evaluateLastAttemptAndSecondaryNotFound(RetryContext retryContext)

Determina a hora da última tentativa para um local de armazenamento e retorna um que especifica se uma solicitação que foi enviada para o local secundário falhou com 404.

RetryInfo evaluateRetryInfo(final RetryContext retryContext, final boolean secondaryNotFound, final long retryInterval)

Determina o RetryInfo objeto que indica se a próxima repetição ocorrerá no local primário ou secundário e especifica o modo de localização.

Membros herdados

Detalhes do campo

DEFAULT_CLIENT_BACKOFF

public static final int DEFAULT_CLIENT_BACKOFF= 1000 * 30

Representa o intervalo de retirada do cliente padrão, em milissegundos.

DEFAULT_CLIENT_RETRY_COUNT

public static final int DEFAULT_CLIENT_RETRY_COUNT= 3

Representa a contagem de repetições de cliente padrão.

DEFAULT_MAX_BACKOFF

public static final int DEFAULT_MAX_BACKOFF= 1000 * 90

Representa o intervalo de retirada máximo padrão, em milissegundos.

DEFAULT_MIN_BACKOFF

public static final int DEFAULT_MIN_BACKOFF= 1000 * 3

Representa o intervalo de retirada mínimo padrão, em milissegundos.

deltaBackoffIntervalInMs

protected int deltaBackoffIntervalInMs

Representa o intervalo de retirada realizado, em milissegundos.

lastPrimaryAttempt

protected Date lastPrimaryAttempt= null

Representa a hora da última tentativa de solicitação para o local primário.

lastSecondaryAttempt

protected Date lastSecondaryAttempt= null

Representa a hora da última tentativa de solicitação para o local secundário.

maximumAttempts

protected int maximumAttempts

Representa as tentativas máximas que a política de repetição deve tentar.

Detalhes do construtor

RetryPolicy

public RetryPolicy()

Cria uma instância da classe .

RetryPolicy

public RetryPolicy(final int deltaBackoff, final int maxAttempts)

Cria uma instância da classe usando a retirada delta especificada e o máximo de tentativas de repetição.

Parameters:

deltaBackoff - O intervalo de retirada, em milissegundos, entre novas tentativas.
maxAttempts - O número máximo de tentativas de repetição.

Detalhes do método

evaluate

public abstract RetryInfo evaluate(RetryContext retryContext, OperationContext operationContext)

Determina se a operação deve ser repetida e especifica o intervalo até a próxima repetição.

Parameters:

retryContext - Um RetryContext objeto que indica o número de repetições, os resultados da última solicitação, se a próxima repetição deve ocorrer no local primário ou secundário e especifica o modo de localização.
operationContext - Um objeto OperationContext para rastrear a operação atual.

Returns:

Um RetryInfo objeto que indica se a próxima repetição ocorrerá no local primário ou secundário e especifica o modo de localização. Se null, a operação não será repetida.

evaluateLastAttemptAndSecondaryNotFound

protected boolean evaluateLastAttemptAndSecondaryNotFound(RetryContext retryContext)

Determina a hora da última tentativa para um local de armazenamento e retorna um que especifica se uma solicitação que foi enviada para o local secundário falhou com 404.

Parameters:

retryContext - Um RetryContext objeto que indica o número de repetições, os resultados da última solicitação, se a próxima repetição deve ocorrer no local primário ou secundário e especifica o modo de localização.

Returns:

true se uma solicitação enviada para o local secundário falhar com 404 (Não Encontrado). false caso contrário.

evaluateRetryInfo

protected RetryInfo evaluateRetryInfo(final RetryContext retryContext, final boolean secondaryNotFound, final long retryInterval)

Determina o RetryInfo objeto que indica se a próxima repetição ocorrerá no local primário ou secundário e especifica o modo de localização.

Parameters:

retryContext - Um RetryContext objeto que indica o número de repetições, os resultados da última solicitação, se a próxima repetição deve ocorrer no local primário ou secundário e especifica o modo de localização.
secondaryNotFound - Um boolean que representa se uma solicitação enviada para o local secundário falhou com 404 (Não Encontrado)
retryInterval - Intervalo de retirada.

Returns:

Uma referência ao RetryInfo objeto que indica se a próxima repetição ocorrerá no local primário ou secundário e especifica o modo de localização.

Aplica-se a