クラス RetryInterceptorBuilder<B extends RetryInterceptorBuilder<B,T>,T extends MethodInterceptor>

java.lang.ObjectSE
org.springframework.amqp.rabbit.config.RetryInterceptorBuilder<B,T>
型パラメーター:
B - 対象の RetryInterceptorBuilder 実装型。
T - ビルダーの build() メソッドによって返される MethodInterceptor の型。
既知の直属サブクラス
RetryInterceptorBuilder.StatefulRetryInterceptorBuilderRetryInterceptorBuilder.StatelessRetryInterceptorBuilder

public abstract class RetryInterceptorBuilder<B extends RetryInterceptorBuilder<B,T>,T extends MethodInterceptor> extends ObjectSE

エラー時の動作を定義する流れるようなインターフェースを提供することで、StatefulRetryOperationsInterceptor または (ステートレス) RetryOperationsInterceptor の構築をより簡単かつシンプルにするための単純化されたファサード。

典型的な例:

        StatefulRetryOperationsInterceptor interceptor =
                        RetryInterceptorBuilder.stateful()
                                .maxAttempts(5)
                                .backOffOptions(1, 2, 10) // initialInterval, multiplier, maxInterval
                                .build();
 

ステートフルインターセプタを構築する場合、メッセージ識別子が必要です。デフォルトの動作では、messageId に基づいてメッセージ ID が決定されます。これは必須フィールドではなく、送信者が設定できない場合があります。そうでない場合は、ロジックを変更して、カスタムジェネレーターを使用してメッセージ ID を決定できます。

                StatefulRetryOperationsInterceptor interceptor = RetryInterceptorBuilder.stateful()
                                .messageKeyGenerator(new MyMessageKeyGenerator())
                                .build();
 
導入:
1.3
作成者:
James Carr, Gary Russell, Artem Bilan
  • コンストラクターの詳細

    • RetryInterceptorBuilder

      public RetryInterceptorBuilder()
  • メソッドの詳細

    • stateful

      ステートフルな再試行インターセプターのビルダーを作成します。
      戻り値:
      インターセプタービルダー。
    • stateless

      ステートレス再試行インターセプターのビルダーを作成します。
      戻り値:
      インターセプタービルダー。
    • _this

      protected final B _this()
    • retryOperations

      public B retryOperations(org.springframework.retry.RetryOperations retryOperations)
      再試行操作を適用します。これが設定されると、他のプロパティは設定できなくなります。他のプロパティが適用されている場合は設定できません。
      パラメーター:
      retryOperations - 再試行操作。
      戻り値:
      this。
    • maxAttempts

      public B maxAttempts(int maxAttempts)
      最大試行回数を適用します - SimpleRetryPolicy が使用されます。カスタムの再試行操作または再試行ポリシーが設定されている場合は使用できません。
      パラメーター:
      maxAttempts - 最大試行回数。
      戻り値:
      this。
    • backOffOptions

      public B backOffOptions(long initialInterval, double multiplier, long maxInterval)
      バックオフオプションを適用します。カスタムの再試行操作またはバックオフポリシーが設定されている場合は使用できません。
      パラメーター:
      initialInterval - 初期間隔。
      multiplier - 乗数。
      maxInterval - 最大間隔。
      戻り値:
      this。
    • retryPolicy

      public B retryPolicy(org.springframework.retry.RetryPolicy policy)
      再試行ポリシーを適用する - カスタム再試行テンプレートが提供されている場合、または最大試行回数またはバックオフオプションまたはポリシーが適用されている場合は使用できません。
      パラメーター:
      policy - ポリシー。
      戻り値:
      this。
    • backOffPolicy

      public B backOffPolicy(org.springframework.retry.backoff.BackOffPolicy policy)
      バックオフポリシーを適用します。カスタムの再試行操作またはバックオフポリシーが適用されている場合は使用できません。
      パラメーター:
      policy - ポリシー。
      戻り値:
      this。
    • recoverer

      public B recoverer(MessageRecoverer recoverer)
      メッセージリカバリを適用します。デフォルトでは、再試行が使い果たされた後にログに記録して破棄します。
      パラメーター:
      recoverer - 回復者。
      戻り値:
      this。
    • applyCommonSettings

      protected void applyCommonSettings(AbstractRetryOperationsInterceptorFactoryBean factoryBean)
    • build

      public abstract T build()