public abstract class AbstractExecutorChannel extends AbstractSubscribableChannel implements ExecutorChannelInterceptorAware
Executor
SE に基づいている可能性のある継承の AbstractSubscribableChannel
基本実装。AbstractDispatcher
の一般的な操作を利用します。
メッセージ処理が Executor.execute(Runnable)
SE に渡されるときに、ExecutorChannelInterceptor
のロジックを実装します。
ExecutorChannel
, PublishSubscribeChannel
修飾子と型 | クラスと説明 |
---|---|
protected class | AbstractExecutorChannel.MessageHandlingTask |
AbstractMessageChannel.ChannelInterceptorList
IntegrationManagement.ManagementOverrides
修飾子と型 | フィールドと説明 |
---|---|
protected AbstractDispatcher | dispatcher |
protected ExecutorSE | executor |
protected int | executorInterceptorsSize |
protected IntegerSE | maxSubscribers |
interceptors, meters
EXPRESSION_PARSER, logger
INDEFINITE_TIMEOUT
METER_PREFIX, RECEIVE_COUNTER_NAME, SEND_TIMER_NAME
コンストラクターと説明 |
---|
AbstractExecutorChannel(ExecutorSE executor) |
修飾子と型 | メソッドと説明 |
---|---|
void | addInterceptor(ChannelInterceptor interceptor) リストの最後にチャネルインターセプターを追加します。 |
void | addInterceptor(int index, ChannelInterceptor interceptor) リストの指定されたインデックスにチャネルインターセプターを追加します。 |
IntegrationPatternType | getIntegrationPatternType() このコンポーネントが実装するパターン型を返します。 |
boolean | hasExecutorInterceptors() |
boolean | removeInterceptor(ChannelInterceptor interceptor) |
ChannelInterceptor | removeInterceptor(int index) |
void | setInterceptors(ListSE<ChannelInterceptor> interceptors) チャネルインターセプターのリストを設定します。 |
void | setMaxSubscribers(int maxSubscribers) チャネルのディスパッチャーがサポートするサブスクライバの最大数を指定します。 |
doSend, getDispatcher, getSubscriberCount, subscribe, unsubscribe
destroy, getComponentType, getFullChannelName, getIChannelInterceptorList, getInterceptors, getMetricsCaptor, getOverrides, isLoggingEnabled, onInit, 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
getInterceptors
send, send
getManagedName, getManagedType, getThisAs, setManagedName, setManagedType
getBeanName, getComponentName
protected ExecutorSE executor
protected AbstractDispatcher dispatcher
protected IntegerSE maxSubscribers
protected int executorInterceptorsSize
public AbstractExecutorChannel(@Nullable ExecutorSE executor)
public void setMaxSubscribers(int maxSubscribers)
maxSubscribers
- 許可されるサブスクライバーの最大数。public void setInterceptors(ListSE<ChannelInterceptor> interceptors)
AbstractMessageChannel
InterceptableChannel
の setInterceptors
AbstractMessageChannel
の setInterceptors
interceptors
- インターセプターのリスト。public void addInterceptor(ChannelInterceptor interceptor)
AbstractMessageChannel
InterceptableChannel
の addInterceptor
AbstractMessageChannel
の addInterceptor
interceptor
- インターセプター。public void addInterceptor(int index, ChannelInterceptor interceptor)
AbstractMessageChannel
InterceptableChannel
の addInterceptor
AbstractMessageChannel
の addInterceptor
index
- インターセプターを追加するためのインデックス。interceptor
- インターセプター。public boolean removeInterceptor(ChannelInterceptor interceptor)
InterceptableChannel
の removeInterceptor
AbstractMessageChannel
の removeInterceptor
@Nullable public ChannelInterceptor removeInterceptor(int index)
InterceptableChannel
の removeInterceptor
AbstractMessageChannel
の removeInterceptor
public boolean hasExecutorInterceptors()
ExecutorChannelInterceptorAware
の hasExecutorInterceptors
public IntegrationPatternType getIntegrationPatternType()
IntegrationPattern
IntegrationPattern
の getIntegrationPatternType
AbstractMessageChannel
の getIntegrationPatternType
IntegrationPatternType