クラス QueueChannel
java.lang.ObjectSE
org.springframework.integration.context.IntegrationObjectSupport
org.springframework.integration.channel.AbstractMessageChannel
org.springframework.integration.channel.AbstractPollableChannel
org.springframework.integration.channel.QueueChannel
- 実装されているすべてのインターフェース:
Aware、BeanFactoryAware、BeanNameAware、DisposableBean、InitializingBean、ApplicationContextAware、ExecutorChannelInterceptorAware、QueueChannelOperations、ComponentSourceAware、ExpressionCapable、IntegrationPattern、NamedComponent、IntegrationManagement、TrackableComponent、MessageChannel、PollableChannel、InterceptableChannel
- 既知の直属サブクラス
PriorityChannel,RendezvousChannel
メッセージチャネルの簡単な実装。各
Message は BlockingQueueSE に配置され、その容量は構築時に指定できます。容量は正の整数値でなければなりません。SynchronousQueueSE に基づく容量ゼロのバージョンの場合は、RendezvousChannel を検討してください。- 作成者:
- Mark Fisher, Oleg Zhurakousky, Gary Russell, Artem Bilan
ネストされたクラスの要約
クラス org.springframework.integration.channel.AbstractMessageChannel から継承されたネストクラス / インターフェース
AbstractMessageChannel.ChannelInterceptorListインターフェース org.springframework.integration.support.management.IntegrationManagement から継承されたネストクラス / インターフェース
IntegrationManagement.ManagementOverridesフィールドのサマリー
フィールドクラス org.springframework.integration.channel.AbstractMessageChannel から継承されたフィールド
interceptors, metersクラス org.springframework.integration.context.IntegrationObjectSupport から継承されたフィールド
EXPRESSION_PARSER, loggerインターフェース org.springframework.integration.support.management.IntegrationManagement から継承されたフィールド
METER_PREFIX, RECEIVE_COUNTER_NAME, SEND_TIMER_NAMEインターフェース org.springframework.messaging.MessageChannel から継承されたフィールド
INDEFINITE_TIMEOUTコンストラクターの概要
コンストラクターコンストラクター説明「無制限」のキュー容量を持つチャネルを作成します。QueueChannel(int capacity) 指定されたキュー容量でチャネルを作成します。QueueChannel(QueueSE<Message<?>> queue) 指定されたキューでチャネルを作成します。方法の概要
修飾子と型メソッド説明clear()このチャネルからすべてのMessagesを削除します。voiddestroy()protected @Nullable Message<?> doReceive(long timeout) サブクラスはこのメソッドを実装する必要があります。protected booleanサブクラスはこのメソッドを実装する必要があります。intこのチャネルでキューに入れられたMessagesの現在の数を取得します。intこのチャネルの残りの容量を取得します。purge(@Nullable MessageSelector selector) 提供されたセレクターで受け入れられないMessagesをすべて削除します。voidregisterMetricsCaptor(MetricsCaptor metricsCaptor) MetricsCaptorを注入します。クラス org.springframework.integration.channel.AbstractPollableChannel から継承されたメソッド
addInterceptor, addInterceptor, getIntegrationPatternType, hasExecutorInterceptors, receive, receive, removeInterceptor, removeInterceptor, setInterceptorsクラス org.springframework.integration.channel.AbstractMessageChannel から継承されたメソッド
getComponentType, getFullChannelName, getIChannelInterceptorList, getInterceptors, getMetricsCaptor, getOverrides, isApplicationRunning, isLoggingEnabled, isObserved, onInit, registerObservationRegistry, send, send, setDatatypes, setLoggingEnabled, setMessageConverter, setObservationConvention, setShouldTrackクラス org.springframework.integration.context.IntegrationObjectSupport から継承されたメソッド
afterPropertiesSet, extractTypeIfPossible, generateId, getApplicationContext, getApplicationContextId, getBeanDescription, getBeanFactory, getBeanName, getChannelResolver, getComponentDescription, getComponentName, getComponentSource, getConversionService, getExpression, getIntegrationProperties, getMessageBuilderFactory, getTaskScheduler, isInitialized, setApplicationContext, setBeanFactory, setBeanName, setChannelResolver, setComponentDescription, setComponentName, setComponentSource, setConversionService, setMessageBuilderFactory, setPrimaryExpression, setTaskScheduler, toStringクラス java.lang.ObjectSE から継承されたメソッド
clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, wait, waitSE, waitSEインターフェース org.springframework.integration.support.management.IntegrationManagement から継承されたメソッド
getManagedName, getManagedType, getThisAs, setManagedName, setManagedTypeインターフェース org.springframework.messaging.support.InterceptableChannel から継承されたメソッド
getInterceptorsインターフェース org.springframework.messaging.MessageChannel から継承されたメソッド
send, sendインターフェース org.springframework.integration.support.context.NamedComponent から継承されたメソッド
getBeanName, getComponentName
フィールドの詳細
queueSemaphore
コンストラクターの詳細
QueueChannel
QueueChannel
public QueueChannel(int capacity) 指定されたキュー容量でチャネルを作成します。- パラメーター:
capacity- 容量。
QueueChannel
public QueueChannel()「無制限」のキュー容量を持つチャネルを作成します。実際の容量値はInteger.MAX_VALUESE です。制限のないキューは OutOfMemoryErrors につながる可能性があるため、制限のあるキューをお勧めします。
メソッドの詳細
registerMetricsCaptor
インターフェースからコピーされた説明:IntegrationManagementMetricsCaptorを注入します。ObservationRegistryが指定されている場合は無視されます。- 次で指定:
- インターフェース
IntegrationManagementのregisterMetricsCaptor - オーバーライド:
- クラス
AbstractMessageChannelのregisterMetricsCaptor - パラメーター:
metricsCaptor- キャプター。- 関連事項:
doSend
クラスからコピーされた説明:AbstractMessageChannelサブクラスはこのメソッドを実装する必要があります。負でないタイムアウトは、チャネルが容量に達した場合に待機する時間を示します(値が 0 の場合、成功の有無にかかわらずすぐに戻る必要があります)。負のタイムアウト値は、メッセージが受け入れられるか、ブロッキングスレッドが中断されるまでメソッドがブロックされることを示します。- 次で指定:
- クラス
AbstractMessageChannelのdoSend - パラメーター:
message- メッセージ。timeout- タイムアウト。- 戻り値:
sendが成功した場合は true。
doReceive
クラスからコピーされた説明:AbstractPollableChannelサブクラスはこのメソッドを実装する必要があります。負でないタイムアウトは、チャネルが空の場合に待機する時間を示します(値が 0 の場合、成功の有無にかかわらずすぐに戻る必要があります)。負のタイムアウト値は、メッセージが使用可能になるか、ブロッキングスレッドが中断されるまでメソッドがブロックされることを示します。- 次で指定:
- クラス
AbstractPollableChannelのdoReceive - パラメーター:
timeout- タイムアウト。- 戻り値:
- メッセージ、または null。
clear
インターフェースからコピーされた説明:QueueChannelOperationsこのチャネルからすべてのMessagesを削除します。- 次で指定:
- インターフェース
QueueChannelOperationsのclear - 戻り値:
- 削除されたメッセージ。
purge
インターフェースからコピーされた説明:QueueChannelOperations提供されたセレクターで受け入れられないMessagesをすべて削除します。- 次で指定:
- インターフェース
QueueChannelOperationsのpurge - パラメーター:
selector- メッセージセレクター。- 戻り値:
- パージされたメッセージのリスト。
getQueueSize
public int getQueueSize()インターフェースからコピーされた説明:QueueChannelOperationsこのチャネルでキューに入れられたMessagesの現在の数を取得します。- 次で指定:
- インターフェース
QueueChannelOperationsのgetQueueSize - 戻り値:
- このチャネルでキューに入れられた
Messagesの現在の数。
getRemainingCapacity
public int getRemainingCapacity()インターフェースからコピーされた説明:QueueChannelOperationsこのチャネルの残りの容量を取得します。- 次で指定:
- インターフェース
QueueChannelOperationsのgetRemainingCapacity - 戻り値:
- このチャネルの残りの容量。
destroy
public void destroy()- 次で指定:
- インターフェース
DisposableBeanのdestroy - 次で指定:
- インターフェース
IntegrationManagementのdestroy - オーバーライド:
- クラス
AbstractMessageChannelのdestroy