クラス RedisQueueMessageDrivenEndpoint

実装されたすべてのインターフェース:
AwareBeanClassLoaderAwareBeanFactoryAwareBeanNameAwareDisposableBeanInitializingBeanSmartInitializingSingletonApplicationContextAwareApplicationEventPublisherAwareLifecyclePhasedSmartLifecycleComponentSourceAwareExpressionCapableMessageProducerIntegrationPatternNamedComponentIntegrationInboundManagementIntegrationManagementManageableLifecycleManageableSmartLifecycleTrackableComponent

導入:
3.0
作成者:
Mark Fisher, Gunnar Hillert, Artem Bilan, Gary Russell, Rainer Frey, Matthias Jeschke
  • フィールドの詳細

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

    • RedisQueueMessageDrivenEndpoint

      public RedisQueueMessageDrivenEndpoint(StringSE queueName, RedisConnectionFactory connectionFactory)
      パラメーター:
      queueName - 空の文字列であってはなりません
      connectionFactory - null であってはなりません
  • メソッドの詳細

    • setApplicationEventPublisher

      public void setApplicationEventPublisher(ApplicationEventPublisher applicationEventPublisher)
      次で指定:
      インターフェース ApplicationEventPublisherAwaresetApplicationEventPublisher 
    • setBeanClassLoader

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

      public void setSerializer(RedisSerializer<?> serializer)
    • setExpectMessage

      public void setExpectMessage(boolean expectMessage)
      データが Redis キューから取得されるとき、返されるデータはメッセージのペイロードのみを表しますか、それともデータは直列化された Message を表しますか? expectMessage のデフォルトは false です。これは、取得したデータが新しい Spring Integration メッセージのペイロードとして使用されることを意味します。それ以外の場合、データは Spring Integration メッセージとして逆直列化されます。
      パラメーター:
      expectMessage - デフォルトは false です
    • setReceiveTimeout

      public void setReceiveTimeout(long receiveTimeout)
      このタイムアウト(ミリ秒)は、boundListOperations で指定されたキューから要素を取得するときに使用されます。

      キューに要素が含まれている場合、データはすぐに取得されます。ただし、キューが空の場合、要素をキューから取得できるか、指定されたタイムアウトが経過するまで、Redis 接続はブロックされます。

      ゼロのタイムアウトは、無期限にブロックするために使用できます。明示的に設定されていない場合、タイムアウト値はデフォルトで 1000 になります

      関連事項: https://redis.io/commands/brpop

      パラメーター:
      receiveTimeout - 負でない必要があります。ミリ秒で指定されます。
    • setTaskExecutor

      public void setTaskExecutor(ExecutorSE taskExecutor)
    • setRecoveryInterval

      public void setRecoveryInterval(long recoveryInterval)
    • setRightPop

      public void setRightPop(boolean rightPop)
      Redis リストからの POP 操作を BRPOP または BLPOP にするかどうかを指定します。
      パラメーター:
      rightPop - BRPOP フラグ。デフォルトは true です。
      導入:
      4.3
    • onInit

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

      public StringSE getComponentType()
      クラスからコピーされた説明: IntegrationObjectSupport
      サブクラスはこのメソッドを実装して、コンポーネント型情報を提供できます。
      次で指定:
      インターフェース NamedComponentgetComponentType 
      オーバーライド:
      クラス IntegrationObjectSupportgetComponentType 
    • doStart

      protected void doStart()
      クラスからコピーされた説明: MessageProducerSupport
      デフォルトでは何も実行されません。ライフサイクル管理された動作が必要な場合、サブクラスはこれをオーバーライドできます。'lifecycleLock' によって保護されています。
      オーバーライド:
      クラス MessageProducerSupportdoStart 
    • doStop

      protected void doStop(RunnableSE callback)
      クラスからコピーされた説明: AbstractEndpoint
      コンポーネントを停止し、コールバックを呼び出します。
      オーバーライド:
      クラス AbstractEndpointdoStop 
      パラメーター:
      callback - 起動する Runnable。
    • doStop

      protected void doStop()
      クラスからコピーされた説明: MessageProducerSupport
      デフォルトでは何もしません。サブクラスは、ライフサイクル管理の動作が必要な場合、これをオーバーライドできます。
      オーバーライド:
      クラス MessageProducerSupportdoStop 
    • isListening

      public boolean isListening()
    • getQueueSize

      @ManagedMetric public long getQueueSize()
      boundListOperations で指定されたキューのサイズを返します。キューは Redis リストで表されます。キューが存在しない場合は、0 が返されます。https://redis.io/commands/llen も参照してください
      戻り値:
      キューのサイズ。決して否定的ではありません。
    • clearQueue

      @ManagedOperation public void clearQueue()
      boundListOperations で指定された Redis キューをクリアします。