Class ImapIdleChannelAdapter
java.lang.Object
org.springframework.integration.context.IntegrationObjectSupport
org.springframework.integration.endpoint.AbstractEndpoint
org.springframework.integration.endpoint.MessageProducerSupport
org.springframework.integration.mail.ImapIdleChannelAdapter
- All Implemented Interfaces:
Aware,BeanClassLoaderAware,BeanFactoryAware,BeanNameAware,DisposableBean,InitializingBean,SmartInitializingSingleton,ApplicationContextAware,ApplicationEventPublisherAware,Lifecycle,Phased,SmartLifecycle,ExpressionCapable,MessageProducer,IntegrationPattern,NamedComponent,ManageableLifecycle,ManageableSmartLifecycle,TrackableComponent
public class ImapIdleChannelAdapter
extends MessageProducerSupport
implements BeanClassLoaderAware, ApplicationEventPublisherAware
An event-driven Channel Adapter that receives mail messages from a mail
server that supports the IMAP "idle" command (see RFC 2177). Received mail
messages will be converted and sent as Spring Integration Messages to the
output channel. The Message payload will be the
Message
instance that was received.- Author:
- Arjen Poutsma, Mark Fisher, Oleg Zhurakousky, Gary Russell, Artem Bilan
-
Nested Class Summary
Nested Classes -
Field Summary
Fields inherited from class org.springframework.integration.endpoint.AbstractEndpoint
lifecycleCondition, lifecycleLockFields inherited from class org.springframework.integration.context.IntegrationObjectSupport
EXPRESSION_PARSER, loggerFields inherited from interface org.springframework.context.SmartLifecycle
DEFAULT_PHASE -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoiddestroy()protected voiddoStart()Take no action by default.protected voiddoStop()Take no action by default.Subclasses may implement this method to provide component type information.voidsetAdviceChain(List<Advice> adviceChain) voidsetApplicationEventPublisher(ApplicationEventPublisher applicationEventPublisher) voidsetBeanClassLoader(ClassLoader classLoader) voidsetReconnectDelay(long reconnectDelay) The time between connection attempts in milliseconds (default 10 seconds).voidsetSendingTaskExecutor(Executor sendingTaskExecutor) Specify anExecutorused to send messages received by the adapter.voidsetShouldReconnectAutomatically(boolean shouldReconnectAutomatically) Specify whether the IDLE task should reconnect automatically after catching aFolderClosedExceptionwhile waiting for messages.voidsetTransactionSynchronizationFactory(TransactionSynchronizationFactory transactionSynchronizationFactory) Methods inherited from class org.springframework.integration.endpoint.MessageProducerSupport
afterSingletonsInstantiated, buildErrorMessage, getErrorChannel, getErrorMessageAttributes, getIntegrationPatternType, getMessagingTemplate, getOutputChannel, onInit, sendErrorMessageIfNecessary, sendMessage, setErrorChannel, setErrorChannelName, setErrorMessageStrategy, setOutputChannel, setOutputChannelName, setSendTimeout, setShouldTrack, subscribeToPublisherMethods inherited from class org.springframework.integration.endpoint.AbstractEndpoint
doStop, getPhase, getRole, isActive, isAutoStartup, isRunning, setAutoStartup, setPhase, setRole, start, stop, stopMethods inherited from class org.springframework.integration.context.IntegrationObjectSupport
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, toStringMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface org.springframework.integration.support.context.NamedComponent
getBeanName, getComponentName
-
Constructor Details
-
ImapIdleChannelAdapter
-
-
Method Details
-
setTransactionSynchronizationFactory
public void setTransactionSynchronizationFactory(TransactionSynchronizationFactory transactionSynchronizationFactory) -
setAdviceChain
-
setSendingTaskExecutor
Specify anExecutorused to send messages received by the adapter.- Parameters:
sendingTaskExecutor- the sendingTaskExecutor to set
-
setShouldReconnectAutomatically
public void setShouldReconnectAutomatically(boolean shouldReconnectAutomatically) Specify whether the IDLE task should reconnect automatically after catching aFolderClosedExceptionwhile waiting for messages. The default value istrue.- Parameters:
shouldReconnectAutomatically- true to reconnect.
-
setReconnectDelay
public void setReconnectDelay(long reconnectDelay) The time between connection attempts in milliseconds (default 10 seconds).- Parameters:
reconnectDelay- the reconnectDelay to set- Since:
- 3.0.5
-
getComponentType
Description copied from class:IntegrationObjectSupportSubclasses may implement this method to provide component type information.- Specified by:
getComponentTypein interfaceNamedComponent- Overrides:
getComponentTypein classIntegrationObjectSupport
-
setBeanClassLoader
- Specified by:
setBeanClassLoaderin interfaceBeanClassLoaderAware
-
setApplicationEventPublisher
- Specified by:
setApplicationEventPublisherin interfaceApplicationEventPublisherAware
-
doStart
protected void doStart()Description copied from class:MessageProducerSupportTake no action by default. Subclasses may override this if they need lifecycle-managed behavior. Protected by 'lifecycleLock'.- Overrides:
doStartin classMessageProducerSupport
-
doStop
protected void doStop()Description copied from class:MessageProducerSupportTake no action by default. Subclasses may override this if they need lifecycle-managed behavior.- Overrides:
doStopin classMessageProducerSupport
-
destroy
public void destroy()- Specified by:
destroyin interfaceDisposableBean- Overrides:
destroyin classAbstractEndpoint
-