Class AbstractExecutorChannel
java.lang.Object
org.springframework.integration.context.IntegrationObjectSupport
org.springframework.integration.channel.AbstractMessageChannel
org.springframework.integration.channel.AbstractSubscribableChannel
org.springframework.integration.channel.AbstractExecutorChannel
- All Implemented Interfaces:
- Aware,- BeanFactoryAware,- BeanNameAware,- DisposableBean,- InitializingBean,- ApplicationContextAware,- ExecutorChannelInterceptorAware,- ExpressionCapable,- IntegrationPattern,- NamedComponent,- IntegrationManagement,- SubscribableChannelManagement,- TrackableComponent,- MessageChannel,- SubscribableChannel,- InterceptableChannel
- Direct Known Subclasses:
- ExecutorChannel,- PartitionedChannel,- PublishSubscribeChannel
public abstract class AbstractExecutorChannel
extends AbstractSubscribableChannel
implements ExecutorChannelInterceptorAware
The 
AbstractSubscribableChannel base implementation for those inheritors
 which logic may be based on the Executor.
 
 Utilizes common operations for the AbstractDispatcher.
 
 Implements the ExecutorChannelInterceptors logic when the message handling
 is handed to the Executor.execute(Runnable).
- Since:
- 4.2
- Author:
- Artem Bilan, Gary Russell
- See Also:
- 
Nested Class SummaryNested ClassesNested classes/interfaces inherited from class org.springframework.integration.channel.AbstractMessageChannelAbstractMessageChannel.ChannelInterceptorListNested classes/interfaces inherited from interface org.springframework.integration.support.management.IntegrationManagementIntegrationManagement.ManagementOverrides
- 
Field SummaryFieldsModifier and TypeFieldDescriptionprotected AbstractDispatcherprotected Executorprotected intprotected IntegerFields inherited from class org.springframework.integration.channel.AbstractMessageChannelinterceptors, metersFields inherited from class org.springframework.integration.context.IntegrationObjectSupportEXPRESSION_PARSER, loggerFields inherited from interface org.springframework.integration.support.management.IntegrationManagementMETER_PREFIX, RECEIVE_COUNTER_NAME, SEND_TIMER_NAMEFields inherited from interface org.springframework.messaging.MessageChannelINDEFINITE_TIMEOUT
- 
Constructor SummaryConstructors
- 
Method SummaryModifier and TypeMethodDescriptionvoidaddInterceptor(int index, ChannelInterceptor interceptor) Add a channel interceptor to the specified index of the list.voidaddInterceptor(ChannelInterceptor interceptor) Add a channel interceptor to the end of the list.Return a pattern type this component implements.booleanremoveInterceptor(int index) booleanremoveInterceptor(ChannelInterceptor interceptor) voidsetInterceptors(List<ChannelInterceptor> interceptors) Set the list of channel interceptors.voidsetMaxSubscribers(int maxSubscribers) Specify the maximum number of subscribers supported by the channel's dispatcher.Methods inherited from class org.springframework.integration.channel.AbstractSubscribableChanneldoSend, getDispatcher, getSubscriberCount, subscribe, unsubscribeMethods inherited from class org.springframework.integration.channel.AbstractMessageChanneldestroy, getComponentType, getFullChannelName, getIChannelInterceptorList, getInterceptors, getMetricsCaptor, getOverrides, isLoggingEnabled, isObserved, onInit, registerMetricsCaptor, registerObservationRegistry, send, send, setDatatypes, setLoggingEnabled, setMessageConverter, setObservationConvention, setShouldTrackMethods inherited from class org.springframework.integration.context.IntegrationObjectSupportafterPropertiesSet, extractTypeIfPossible, generateId, getApplicationContext, getApplicationContextId, getBeanDescription, getBeanFactory, getBeanName, getChannelResolver, getComponentName, getConversionService, getExpression, getIntegrationProperties, getMessageBuilderFactory, getTaskScheduler, isInitialized, setApplicationContext, setBeanFactory, setBeanName, setChannelResolver, setComponentName, setConversionService, setMessageBuilderFactory, setPrimaryExpression, setTaskScheduler, toStringMethods inherited from class java.lang.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface org.springframework.integration.support.management.IntegrationManagementgetManagedName, getManagedType, getThisAs, setManagedName, setManagedTypeMethods inherited from interface org.springframework.messaging.support.InterceptableChannelgetInterceptorsMethods inherited from interface org.springframework.messaging.MessageChannelsend, sendMethods inherited from interface org.springframework.integration.support.context.NamedComponentgetBeanName, getComponentName
- 
Field Details- 
executor
- 
dispatcher
- 
maxSubscribers
- 
executorInterceptorsSizeprotected int executorInterceptorsSize
 
- 
- 
Constructor Details- 
AbstractExecutorChannel
 
- 
- 
Method Details- 
setMaxSubscriberspublic void setMaxSubscribers(int maxSubscribers) Specify the maximum number of subscribers supported by the channel's dispatcher.- Parameters:
- maxSubscribers- The maximum number of subscribers allowed.
 
- 
setInterceptorsDescription copied from class:AbstractMessageChannelSet the list of channel interceptors. This will clear any existing interceptors.- Specified by:
- setInterceptorsin interface- InterceptableChannel
- Overrides:
- setInterceptorsin class- AbstractMessageChannel
- Parameters:
- interceptors- The list of interceptors.
 
- 
addInterceptorDescription copied from class:AbstractMessageChannelAdd a channel interceptor to the end of the list.- Specified by:
- addInterceptorin interface- InterceptableChannel
- Overrides:
- addInterceptorin class- AbstractMessageChannel
- Parameters:
- interceptor- The interceptor.
 
- 
addInterceptorDescription copied from class:AbstractMessageChannelAdd a channel interceptor to the specified index of the list.- Specified by:
- addInterceptorin interface- InterceptableChannel
- Overrides:
- addInterceptorin class- AbstractMessageChannel
- Parameters:
- index- The index to add interceptor.
- interceptor- The interceptor.
 
- 
removeInterceptor- Specified by:
- removeInterceptorin interface- InterceptableChannel
- Overrides:
- removeInterceptorin class- AbstractMessageChannel
 
- 
removeInterceptor- Specified by:
- removeInterceptorin interface- InterceptableChannel
- Overrides:
- removeInterceptorin class- AbstractMessageChannel
 
- 
hasExecutorInterceptorspublic boolean hasExecutorInterceptors()- Specified by:
- hasExecutorInterceptorsin interface- ExecutorChannelInterceptorAware
 
- 
getIntegrationPatternTypeDescription copied from interface:IntegrationPatternReturn a pattern type this component implements.- Specified by:
- getIntegrationPatternTypein interface- IntegrationPattern
- Overrides:
- getIntegrationPatternTypein class- AbstractMessageChannel
- Returns:
- the IntegrationPatternTypethis component implements.
 
 
-