クラス AbstractPollingEndpoint

実装されたすべてのインターフェース:
AwareBeanClassLoaderAwareBeanFactoryAwareBeanNameAwareDisposableBeanInitializingBeanApplicationContextAwareLifecyclePhasedSmartLifecycleExpressionCapableNamedComponentManageableLifecycleManageableSmartLifecycle
既知の直属サブクラス
PollingConsumerSourcePollingChannelAdapter

public abstract class AbstractPollingEndpoint extends AbstractEndpoint implements BeanClassLoaderAware
コンシューマーパターンの基本をポーリングするための AbstractEndpoint 拡張。標準のポーリングロジックは、提供されている Trigger に従った定期的なタスクスケジューリングに基づいています。このエンドポイントが isReactive() として扱われる場合、ポーリングロジックは SimpleTriggerContext 状態に基づいて Flux.generate(java.util.function.Consumer) と Mono.delay(Duration) の組み合わせに変換されます。
作成者:
Mark Fisher, Oleg Zhurakousky, Gary Russell, Artem Bilan, Andreas Baer, Christian Tzolov
  • フィールドの詳細

  • コンストラクターの詳細

    • AbstractPollingEndpoint

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

    • setTaskExecutor

      public void setTaskExecutor(ExecutorSE taskExecutor)
    • getTaskExecutor

      protected ExecutorSE getTaskExecutor()
    • isSyncExecutor

      protected boolean isSyncExecutor()
    • setTrigger

      public void setTrigger(Trigger trigger)
    • setAdviceChain

      public void setAdviceChain(ListSE<Advice> adviceChain)
    • setMaxMessagesPerPoll

      @ManagedAttribute public void setMaxMessagesPerPoll(long maxMessagesPerPoll)
      スケジューリングサイクルごとに送信元からポーリングするメッセージの上限を設定します。負の数は、MessageSource が null を返すまで無制限のメッセージを取得することを意味します。ゼロは、レコードをポーリングしないことを意味します。後で "maxMessagesPerPoll" がゼロ以外の値に変更された場合、一時停止と見なすことができます。ソースが現在の受信コールに対して null を返す場合、ポーリングサイクルはより早く終了する可能性があります。
      パラメーター:
      maxMessagesPerPoll - スケジュールごとにポーリングするメッセージの数。
    • getMaxMessagesPerPoll

      public long getMaxMessagesPerPoll()
    • setErrorHandler

      public void setErrorHandler(ErrorHandler errorHandler)
    • setBeanClassLoader

      public void setBeanClassLoader(ClassLoaderSE classLoader)
      次で指定:
      インターフェース BeanClassLoaderAwaresetBeanClassLoader 
    • setTransactionSynchronizationFactory

      public void setTransactionSynchronizationFactory(TransactionSynchronizationFactory transactionSynchronizationFactory)
    • getDefaultErrorChannel

      public MessageChannel getDefaultErrorChannel()
      エラーハンドラーが明示的に提供され、それが MessagePublishingErrorHandler である場合、デフォルトのエラーチャネルを返します。
      戻り値:
      チャネルまたは null。
      導入:
      4.3
    • getBeanClassLoader

      protected ClassLoaderSE getBeanClassLoader()
    • isReceiveOnlyAdvice

      protected boolean isReceiveOnlyAdvice(Advice advice)
      このアドバイスをポーリング全体ではなく receiveMessage() 操作にのみ適用する必要がある場合は、true を返します。
      パラメーター:
      advice - 助言。
      戻り値:
      receive 操作のみを通知する場合は true。
    • applyReceiveOnlyAdviceChain

      protected void applyReceiveOnlyAdviceChain(CollectionSE<Advice> chain)
      receiveMessage() 呼び出しに応答するコンポーネントにアドバイスチェーンを追加します。
      パラメーター:
      chain - アドバイスチェーン Collection
    • isReactive

      protected boolean isReactive()
    • getPollingFlux

      protected reactor.core.publisher.Flux<Message<?>> getPollingFlux()
    • getReceiveMessageSource

      protected ObjectSE getReceiveMessageSource()
    • setReceiveMessageSource

      protected void setReceiveMessageSource(ObjectSE source)
    • onInit

      protected void onInit()
      クラスからコピーされた説明: IntegrationObjectSupport
      サブクラスは、初期化ロジック用にこれを実装できます。
      オーバーライド:
      クラス AbstractEndpointonInit 
    • doStart

      protected void doStart()
      クラスからコピーされた説明: AbstractEndpoint
      サブクラスは、開始動作でこのメソッドを実装する必要があります。このメソッドは、AbstractEndpoint.lifecycleLock を保持しているときに呼び出されます。
      次で指定:
      クラス AbstractEndpointdoStart 
    • doStop

      protected void doStop()
      クラスからコピーされた説明: AbstractEndpoint
      サブクラスは、停止動作でこのメソッドを実装する必要があります。このメソッドは、AbstractEndpoint.lifecycleLock を保持しているときに呼び出されます。
      次で指定:
      クラス AbstractEndpointdoStop 
    • receiveMessage

      protected abstract Message<?> receiveMessage()
      次のメッセージを取得します(利用可能な場合)。すぐに利用できるメッセージがない場合は、null を返す場合があります。
      戻り値:
      メッセージまたは null。
    • handleMessage

      protected abstract void handleMessage(Message<?> message)
      メッセージを処理します。
      パラメーター:
      message - メッセージ。
    • getResourceToBind

      protected ObjectSE getResourceToBind()
      トランザクション同期を使用するときにバインドするリソース (MessageSource など) を返します。
      戻り値:
      リソース。トランザクションの同期が不要な場合は null。
    • getResourceKey

      protected StringSE getResourceKey()
      リソースが IntegrationResourceHolder の属性として使用可能になるキーを返します。デフォルトの ExpressionEvaluatingTransactionSynchronizationProcessor は、この属性を SpEL 式の変数として使用できるようにします。
      戻り値:
      キー、またはリソースを属性として使用可能にしない場合は null(デフォルト)。