クラス DirectReplyToMessageListenerContainer
- java.lang.ObjectSE
-
- org.springframework.amqp.rabbit.connection.RabbitAccessor
-
- org.springframework.amqp.rabbit.listener.AbstractMessageListenerContainer
-
- org.springframework.amqp.rabbit.listener.DirectMessageListenerContainer
-
- org.springframework.amqp.rabbit.listener.DirectReplyToMessageListenerContainer
- 実装されたすべてのインターフェース:
MessageListenerContainer
、Aware
、BeanNameAware
、DisposableBean
、InitializingBean
、ApplicationContextAware
、ApplicationEventPublisherAware
、Lifecycle
、Phased
、SmartLifecycle
public class DirectReplyToMessageListenerContainer extends DirectMessageListenerContainer
Direct ReplyTo のリスナーコンテナーは、疑似キューAddress.AMQ_RABBITMQ_REPLY_TO
のみをリッスンします。コンシューマーはオンデマンドで追加され、idleEventInterval
(デフォルトは 60 秒) の間アイドル状態になると終了します。- 導入:
- 2.0
- 作成者:
- Gary Russell
ネストされたクラスのサマリー
ネストされたクラス 修飾子と型 クラス 説明 static class
DirectReplyToMessageListenerContainer.ChannelHolder
チャネルのホルダー。再利用のために割り当てられた後、コンシューマーの不適切なリリースを防ぐために使用されるコンシューマーエポックが含まれます。クラス org.springframework.amqp.rabbit.listener.AbstractMessageListenerContainer から継承されたネストクラス / インターフェース
AbstractMessageListenerContainer.JavaLangErrorHandler, AbstractMessageListenerContainer.SharedConnectionNotInitializedException, AbstractMessageListenerContainer.WrappedTransactionException
フィールドサマリー
クラス org.springframework.amqp.rabbit.listener.DirectMessageListenerContainer から継承されたフィールド
consumers
クラス org.springframework.amqp.rabbit.listener.AbstractMessageListenerContainer から継承されたフィールド
consumersMonitor, DEFAULT_DEBATCHING_ENABLED, DEFAULT_PREFETCH_COUNT, DEFAULT_RECOVERY_INTERVAL, DEFAULT_SHUTDOWN_TIMEOUT
クラス org.springframework.amqp.rabbit.connection.RabbitAccessor から継承されたフィールド
logger
インターフェース org.springframework.context.SmartLifecycle から継承されたフィールド
DEFAULT_PHASE
コンストラクターのサマリー
コンストラクター コンストラクター 説明 DirectReplyToMessageListenerContainer(ConnectionFactory connectionFactory)
メソッドのサマリー
すべてのメソッド インスタンスメソッド 具象メソッド 修飾子と型 メソッド 説明 void
addQueueNames(StringSE... queueNames)
このコンテナーのキューのリストにキューを追加します。protected void
consumerRemoved(org.springframework.amqp.rabbit.listener.DirectMessageListenerContainer.SimpleConsumer consumer)
コンシューマーが削除されるたびに呼び出されます。protected void
doStart()
このコンテナーを開始し、すべての呼び出し側タスクに通知します。protected int
findIdleConsumer()
下に調整するときは、キャンセル可能なコンシューマーを返します。DirectReplyToMessageListenerContainer.ChannelHolder
getChannelHolder()
直接返信するコンシューマーに関連付けられたチャネルホルダーを取得します。不適切なリリースを防ぐためのコンシューマーエポックが含まれています。protected void
processMonitorTask()
サブクラスはこれをオーバーライドして、監視タスクの実行時に追加のアクションを実行できます。void
releaseConsumerFor(DirectReplyToMessageListenerContainer.ChannelHolder channelHolder, boolean cancelConsumer, StringSE message)
再利用のためにチャネルに関連付けられたコンシューマーを解放します。boolean
removeQueueNames(StringSE... queueNames)
このコンテナーのキューのリストからキューを削除します。void
setConsumersPerQueue(int consumersPerQueue)
各キューは独自のコンシューマーで実行されます。このプロパティを設定して、キューごとに複数のコンシューマーを作成します。void
setMessageListener(MessageListener messageListener)
MessageListener
を設定してください。void
setMonitorInterval(long monitorInterval)
失敗したコンシューマーとアイドル状態のコンテナーをチェックするタスクを実行する頻度を設定します。void
setQueueNames(StringSE... queueName)
メッセージを受信するキューの名前を設定します。クラス org.springframework.amqp.rabbit.listener.DirectMessageListenerContainer から継承されたメソッド
actualStart, addQueues, checkConnect, doInitialize, doRedeclareElementsIfNecessary, doShutdown, doStop, removeQueues, setAckTimeout, setExclusive, setMessagesPerAck, setMissingQueuesFatal, setTaskScheduler
クラス org.springframework.amqp.rabbit.listener.AbstractMessageListenerContainer から継承されたメソッド
actualInvokeListener, addAfterReceivePostProcessors, afterPropertiesSet, causeChainHasImmediateAcknowledgeAmqpException, checkMessageListener, checkMismatchedQueues, configureAdminIfNeeded, debatch, destroy, doInvokeListener, doInvokeListener, doSetPossibleAuthenticationFailureFatal, executeListener, getAcknowledgeMode, getAdviceChain, getAfterReceivePostProcessors, getAmqpAdmin, getApplicationContext, getApplicationEventPublisher, getBatchingStrategy, getBeanName, getConnectionFactory, getConsumeDelay, getConsumerArguments, getConsumerTagStrategy, getExclusiveConsumerExceptionLogger, getFailedDeclarationRetryInterval, getIdleEventInterval, getJavaLangErrorHandler, getLastReceive, getListenerId, getMessageListener, getMessagePropertiesConverter, getPhase, getPrefetchCount, getQueueNames, getQueueNamesAsSet, getQueueNamesToQueues, getRecoveryBackOff, getRoutingConnectionFactory, getRoutingLookupKey, getShutdownTimeout, getTaskExecutor, getTransactionAttribute, getTransactionManager, handleListenerException, initialize, initializeProxy, invokeErrorHandler, invokeListener, isActive, isAlwaysRequeueWithTxManagerRollback, isAsyncReplies, isAutoDeclare, isAutoStartup, isChannelLocallyTransacted, isDeBatchingEnabled, isDefaultRequeueRejected, isExclusive, isExposeListenerChannel, isForceCloseChannel, isGlobalQos, isMismatchedQueuesFatal, isMissingQueuesFatal, isMissingQueuesFatalSet, isNoLocal, isPossibleAuthenticationFailureFatal, isPossibleAuthenticationFailureFatalSet, isRunning, isStatefulRetryFatalWithNullMessageId, lazyLoad, prepareHolderForRollback, publishConsumerFailedEvent, publishIdleContainerEvent, publishMissingQueueEvent, redeclareElementsIfNecessary, removeAfterReceivePostProcessor, setAcknowledgeMode, setAdviceChain, setAfterReceivePostProcessors, setAlwaysRequeueWithTxManagerRollback, setAmqpAdmin, setApplicationContext, setApplicationEventPublisher, setAutoDeclare, setAutoStartup, setBatchingStrategy, setBeanName, setConsumeDelay, setConsumerArguments, setConsumerTagStrategy, setDeBatchingEnabled, setDefaultRequeueRejected, setErrorHandler, setErrorHandlerLoggerName, setExclusiveConsumerExceptionLogger, setExposeListenerChannel, setFailedDeclarationRetryInterval, setForceCloseChannel, setGlobalQos, setIdleEventInterval, setjavaLangErrorHandler, setListenerId, setLookupKeyQualifier, setMessagePropertiesConverter, setMicrometerEnabled, setMicrometerTags, setMismatchedQueuesFatal, setNoLocal, setPhase, setPossibleAuthenticationFailureFatal, setPrefetchCount, setQueues, setRecoveryBackOff, setRecoveryInterval, setShutdownTimeout, setStatefulRetryFatalWithNullMessageId, setTaskExecutor, setTransactionAttribute, setTransactionManager, setupMessageListener, shutdown, start, stop, stop, updateLastReceive, validateConfiguration, wrapToListenerExecutionFailedExceptionIfNeeded
クラス org.springframework.amqp.rabbit.connection.RabbitAccessor から継承されたメソッド
convertRabbitAccessException, createConnection, getChannel, getConnection, getTransactionalResourceHolder, isChannelTransacted, setChannelTransacted, setConnectionFactory
クラス java.lang.ObjectSE から継承されたメソッド
clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, toString, wait, waitSE, waitSE
インターフェース org.springframework.amqp.rabbit.listener.MessageListenerContainer から継承されたメソッド
isConsumerBatchEnabled
コンストラクターの詳細
DirectReplyToMessageListenerContainer
public DirectReplyToMessageListenerContainer(ConnectionFactory connectionFactory)
メソッドの詳細
setConsumersPerQueue
public final void setConsumersPerQueue(int consumersPerQueue)
クラスからコピーされた説明:DirectMessageListenerContainer
各キューは独自のコンシューマーで実行されます。このプロパティを設定して、キューごとに複数のコンシューマーを作成します。コンテナーがすでに実行されている場合、キューごとのコンシューマーの数は必要に応じて増減されます。- オーバーライド:
- クラス
DirectMessageListenerContainer
のsetConsumersPerQueue
- パラメーター:
consumersPerQueue
- キューごとのコンシューマー。
setMonitorInterval
public final void setMonitorInterval(long monitorInterval)
クラスからコピーされた説明:DirectMessageListenerContainer
失敗したコンシューマーとアイドル状態のコンテナーをチェックするタスクを実行する頻度を設定します。- オーバーライド:
- クラス
DirectMessageListenerContainer
のsetMonitorInterval
- パラメーター:
monitorInterval
- 間隔 ; デフォルトは 10000 ですが、idleEventInterval
/2 (構成されている場合) またはfailedDeclarationRetryInterval
の最小値に調整されます。
setQueueNames
public final void setQueueNames(StringSE... queueName)
クラスからコピーされた説明:AbstractMessageListenerContainer
メッセージを受信するキューの名前を設定します。- 次で指定:
- インターフェース
MessageListenerContainer
のsetQueueNames
- オーバーライド:
- クラス
DirectMessageListenerContainer
のsetQueueNames
- パラメーター:
queueName
- 目的のキュー名 (null
にすることはできません)
addQueueNames
public final void addQueueNames(StringSE... queueNames)
クラスからコピーされた説明:AbstractMessageListenerContainer
このコンテナーのキューのリストにキューを追加します。- オーバーライド:
- クラス
DirectMessageListenerContainer
のaddQueueNames
- パラメーター:
queueNames
- 追加するキュー。
removeQueueNames
public final boolean removeQueueNames(StringSE... queueNames)
クラスからコピーされた説明:AbstractMessageListenerContainer
このコンテナーのキューのリストからキューを削除します。- オーバーライド:
- クラス
DirectMessageListenerContainer
のremoveQueueNames
- パラメーター:
queueNames
- 削除するキュー。- 戻り値:
- ターゲット
queueNames
リストでの削除のブール結果。
setMessageListener
public void setMessageListener(MessageListener messageListener)
クラスからコピーされた説明:AbstractMessageListenerContainer
MessageListener
を設定してください。- オーバーライド:
- クラス
AbstractMessageListenerContainer
のsetMessageListener
- パラメーター:
messageListener
- リスナー。
doStart
protected void doStart()
クラスからコピーされた説明:AbstractMessageListenerContainer
このコンテナーを開始し、すべての呼び出し側タスクに通知します。- オーバーライド:
- クラス
DirectMessageListenerContainer
のdoStart
processMonitorTask
protected void processMonitorTask()
クラスからコピーされた説明:DirectMessageListenerContainer
サブクラスはこれをオーバーライドして、監視タスクの実行時に追加のアクションを実行できます。- オーバーライド:
- クラス
DirectMessageListenerContainer
のprocessMonitorTask
findIdleConsumer
protected int findIdleConsumer()
クラスからコピーされた説明:DirectMessageListenerContainer
下に調整するときは、キャンセル可能なコンシューマーを返します。consumerMonitor で同期中に呼び出されます。- オーバーライド:
- クラス
DirectMessageListenerContainer
のfindIdleConsumer
- 戻り値:
- コンシューマーインデックス、またはアイドルでない場合は -1。
consumerRemoved
protected void consumerRemoved(org.springframework.amqp.rabbit.listener.DirectMessageListenerContainer.SimpleConsumer consumer)
クラスからコピーされた説明:DirectMessageListenerContainer
コンシューマーが削除されるたびに呼び出されます。- オーバーライド:
- クラス
DirectMessageListenerContainer
のconsumerRemoved
- パラメーター:
consumer
- コンシューマー。
getChannelHolder
public DirectReplyToMessageListenerContainer.ChannelHolder getChannelHolder()
直接返信するコンシューマーに関連付けられたチャネルホルダーを取得します。不適切なリリースを防ぐためのコンシューマーエポックが含まれています。- 戻り値:
- チャンネルホルダー。
releaseConsumerFor
public void releaseConsumerFor(DirectReplyToMessageListenerContainer.ChannelHolder channelHolder, boolean cancelConsumer, @Nullable StringSE message)
再利用のためにチャネルに関連付けられたコンシューマーを解放します。クライアントが遅れて到着した返信を処理 / 破棄する準備ができていない場合は、cancelConsumer を true に設定します。- パラメーター:
channelHolder
- チャンネルホルダー。cancelConsumer
- コンシューマーをキャンセルする場合は true。message
- cancelConsumer が true の場合にキャンセルイベントに含まれるメッセージ。