public class PublishSubscribeChannel extends AbstractExecutorChannel implements BroadcastCapableChannel
AbstractExecutorChannel.MessageHandlingTask
AbstractMessageChannel.ChannelInterceptorList
IntegrationManagement.ManagementOverrides
dispatcher, executor, executorInterceptorsSize, maxSubscribers
interceptors, meters
EXPRESSION_PARSER, logger
INDEFINITE_TIMEOUT
METER_PREFIX, RECEIVE_COUNTER_NAME, SEND_TIMER_NAME
コンストラクターと説明 |
---|
PublishSubscribeChannel() メッセージ送信者のスレッドでハンドラーを呼び出す PublishSubscribeChannel を作成します。 |
PublishSubscribeChannel(ExecutorSE executor) Executor SE を使用してハンドラーを呼び出す PublishSubscribeChannel を作成します。 |
修飾子と型 | メソッドと説明 |
---|---|
StringSE | getComponentType() サブクラスはこのメソッドを実装して、コンポーネント型情報を提供できます。 |
protected BroadcastingDispatcher | getDispatcher() |
IntegrationPatternType | getIntegrationPatternType() このコンポーネントが実装するパターン型を返します。 |
void | onInit() 初期化のためのコールバックメソッド。 |
void | setApplySequence(boolean applySequence) サブスクライブしたハンドラーを呼び出す前に、シーケンス番号とサイズのヘッダーをメッセージに適用するかどうかを指定します。 |
void | setErrorHandler(ErrorHandler errorHandler) このチャネルの下流で発生する例外を処理するための ErrorHandler 戦略を提供します。 |
void | setIgnoreFailures(boolean ignoreFailures) 1 つ以上のハンドラーの失敗を無視するかどうかを指定します。 |
void | setMinSubscribers(int minSubscribers) 少なくともこの数のサブスクライバーがメッセージを受信すると、 AbstractMessageChannel.send(org.springframework.messaging.Message) は true を返します。 |
addInterceptor, addInterceptor, hasExecutorInterceptors, removeInterceptor, removeInterceptor, setInterceptors, setMaxSubscribers
doSend, getSubscriberCount, subscribe, unsubscribe
destroy, getFullChannelName, getIChannelInterceptorList, getInterceptors, getMetricsCaptor, getOverrides, isLoggingEnabled, registerMetricsCaptor, send, send, setDatatypes, setLoggingEnabled, setMessageConverter, setShouldTrack
afterPropertiesSet, extractTypeIfPossible, generateId, getApplicationContext, getApplicationContextId, getBeanDescription, getBeanFactory, getBeanName, getChannelResolver, getComponentName, getConversionService, getExpression, getIntegrationProperties, getIntegrationProperty, getMessageBuilderFactory, getTaskScheduler, isInitialized, setApplicationContext, setBeanFactory, setBeanName, setChannelResolver, setComponentName, setConversionService, setMessageBuilderFactory, setPrimaryExpression, setTaskScheduler, toString
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, waitSE, waitSE, waitSE
isBroadcast
subscribe, unsubscribe
send, send
getInterceptors
getManagedName, getManagedType, getThisAs, setManagedName, setManagedType
getBeanName, getComponentName
public PublishSubscribeChannel()
public PublishSubscribeChannel(@Nullable ExecutorSE executor)
Executor
SE を使用してハンドラーを呼び出す PublishSubscribeChannel を作成します。これが null の場合、各呼び出しはメッセージ送信者のスレッドで発生します。executor
- エグゼキューター。public StringSE getComponentType()
IntegrationObjectSupport
NamedComponent
の getComponentType
AbstractMessageChannel
の getComponentType
public IntegrationPatternType getIntegrationPatternType()
IntegrationPattern
IntegrationPattern
の getIntegrationPatternType
AbstractExecutorChannel
の getIntegrationPatternType
IntegrationPatternType
public void setErrorHandler(ErrorHandler errorHandler)
ErrorHandler
戦略を提供します。これは、このチャネルのメッセージをディスパッチするように Executor が構成されている場合にのみ適用されます。それ以外の場合、例外は送信スレッド内で直接スローされます。ErrorHandler が提供されず、このチャネルがディスパッチを Executor に委譲する場合、デフォルトの戦略は、失敗したリクエストメッセージのエラーチャネルヘッダーがある場合はそのヘッダーにエラーメッセージを送信する MessagePublishingErrorHandler
であり、ない場合はデフォルトの "errorChannel" に送信されます。errorHandler
- エラーハンドラー。PublishSubscribeChannel(Executor)
public void setIgnoreFailures(boolean ignoreFailures)
false
です。これは、ハンドラーが失敗したときに例外がスローされることを意味します。これをオーバーライドして例外を抑制するには、値を true
に設定します。ignoreFailures
- 失敗を無視する必要がある場合は true。public void setApplySequence(boolean applySequence)
false
であり、シーケンスヘッダーは適用されません。Aggregator ダウンストリームをデフォルトの相関および完了戦略で使用することを計画している場合は、このフラグを true
に設定する必要があります。applySequence
- シーケンス情報を適用する必要がある場合は true。public void setMinSubscribers(int minSubscribers)
AbstractMessageChannel.send(org.springframework.messaging.Message)
は true を返します。デフォルト: 0。minSubscribers
- サブスクライバーの最小数。public final void onInit()
AbstractMessageChannel
の onInit
protected BroadcastingDispatcher getDispatcher()
AbstractSubscribableChannel
の getDispatcher