Class AmqpChannelFactoryBean
java.lang.Object
org.springframework.beans.factory.config.AbstractFactoryBean<AbstractAmqpChannel>
org.springframework.integration.amqp.config.AmqpChannelFactoryBean
- All Implemented Interfaces:
org.springframework.beans.factory.Aware,org.springframework.beans.factory.BeanClassLoaderAware,org.springframework.beans.factory.BeanFactoryAware,org.springframework.beans.factory.BeanNameAware,org.springframework.beans.factory.DisposableBean,org.springframework.beans.factory.FactoryBean<AbstractAmqpChannel>,org.springframework.beans.factory.InitializingBean,org.springframework.context.Lifecycle,org.springframework.context.Phased,org.springframework.context.SmartLifecycle
public class AmqpChannelFactoryBean extends org.springframework.beans.factory.config.AbstractFactoryBean<AbstractAmqpChannel> implements org.springframework.context.SmartLifecycle, org.springframework.beans.factory.BeanNameAware
If point-to-point, we send to the default exchange with the routing key
equal to "[beanName]" and we declare that same Queue and register a listener
if message-driven or poll explicitly otherwise. If publish-subscribe, we declare
a FanoutExchange named "si.fanout.[beanName]" and we send to that without any
routing key, and on the receiving side, we create an anonymous Queue that is
bound to that exchange.
- Since:
- 2.1
-
Field Summary
-
Constructor Summary
Constructors Constructor Description AmqpChannelFactoryBean()AmqpChannelFactoryBean(boolean messageDriven) -
Method Summary
Modifier and Type Method Description protected AbstractAmqpChannelcreateInstance()protected voiddestroyInstance(AbstractAmqpChannel instance)java.lang.Class<?>getObjectType()intgetPhase()booleanisAutoStartup()booleanisRunning()voidsetAcknowledgeMode(org.springframework.amqp.core.AcknowledgeMode acknowledgeMode)voidsetAdviceChain(org.aopalliance.aop.Advice[] adviceChain)voidsetAmqpAdmin(org.springframework.amqp.core.AmqpAdmin amqpAdmin)This is an optional reference to an AmqpAdmin to use when declaring a Queue implicitly for a PollableAmqpChannel.voidsetAutoStartup(boolean autoStartup)voidsetBatchSize(java.lang.Integer batchSize)voidsetBeanName(java.lang.String name)voidsetChannelTransacted(boolean channelTransacted)voidsetConcurrentConsumers(int concurrentConsumers)voidsetConnectionFactory(org.springframework.amqp.rabbit.connection.ConnectionFactory connectionFactory)voidsetConsumersPerQueue(java.lang.Integer consumersPerQueue)voidsetDefaultDeliveryMode(org.springframework.amqp.core.MessageDeliveryMode defaultDeliveryMode)voidsetEncoding(java.lang.String encoding)voidsetErrorHandler(org.springframework.util.ErrorHandler errorHandler)voidsetExchange(org.springframework.amqp.core.FanoutExchange exchange)Set the FanoutExchange to use.voidsetExposeListenerChannel(boolean exposeListenerChannel)voidsetExtractPayload(java.lang.Boolean extractPayload)voidsetHeadersLast(boolean headersLast)voidsetInboundHeaderMapper(AmqpHeaderMapper inboundMapper)voidsetInterceptors(java.util.List<org.springframework.messaging.support.ChannelInterceptor> interceptors)voidsetMaxSubscribers(int maxSubscribers)voidsetMessageConverter(org.springframework.amqp.support.converter.MessageConverter messageConverter)voidsetMessagePropertiesConverter(org.springframework.amqp.rabbit.support.MessagePropertiesConverter messagePropertiesConverter)voidsetMissingQueuesFatal(java.lang.Boolean missingQueuesFatal)voidsetOutboundHeaderMapper(AmqpHeaderMapper outboundMapper)voidsetPhase(int phase)voidsetPrefetchCount(int prefetchCount)voidsetPubSub(boolean pubSub)voidsetQueueName(java.lang.String queueName)Set the Queue name to use.voidsetReceiveTimeout(long receiveTimeout)voidsetRecoveryInterval(long recoveryInterval)voidsetShutdownTimeout(long shutdownTimeout)voidsetTaskExecutor(java.util.concurrent.Executor taskExecutor)voidsetTemplateChannelTransacted(boolean channelTransacted)voidsetTransactionAttribute(org.springframework.transaction.interceptor.TransactionAttribute transactionAttribute)voidsetTransactionManager(org.springframework.transaction.PlatformTransactionManager transactionManager)voidstart()voidstop()voidstop(java.lang.Runnable callback)
-
Constructor Details
-
AmqpChannelFactoryBean
public AmqpChannelFactoryBean() -
AmqpChannelFactoryBean
public AmqpChannelFactoryBean(boolean messageDriven)
-
-
Method Details
-
setBeanName
public void setBeanName(@Nullable java.lang.String name)- Specified by:
setBeanNamein interfaceorg.springframework.beans.factory.BeanNameAware
-
setInterceptors
public void setInterceptors(java.util.List<org.springframework.messaging.support.ChannelInterceptor> interceptors) -
setAmqpAdmin
public void setAmqpAdmin(org.springframework.amqp.core.AmqpAdmin amqpAdmin)This is an optional reference to an AmqpAdmin to use when declaring a Queue implicitly for a PollableAmqpChannel. It is not needed for the message-driven (Subscribable) channels since those are able to create a RabbitAdmin instance using the underlying listener container's ConnectionFactory.- Parameters:
amqpAdmin- The amqp admin.
-
setExchange
public void setExchange(org.springframework.amqp.core.FanoutExchange exchange)Set the FanoutExchange to use. This is only relevant for publish-subscribe-channels, and even then if not provided, a FanoutExchange will be implicitly created.- Parameters:
exchange- The fanout exchange.
-
setQueueName
public void setQueueName(java.lang.String queueName)Set the Queue name to use. This is only relevant for point-to-point channels, even then if not provided, a Queue will be implicitly created.- Parameters:
queueName- The queue name.
-
setEncoding
public void setEncoding(java.lang.String encoding) -
setMessageConverter
public void setMessageConverter(org.springframework.amqp.support.converter.MessageConverter messageConverter) -
setTemplateChannelTransacted
public void setTemplateChannelTransacted(boolean channelTransacted) -
setChannelTransacted
public void setChannelTransacted(boolean channelTransacted) -
setConnectionFactory
public void setConnectionFactory(org.springframework.amqp.rabbit.connection.ConnectionFactory connectionFactory) -
setMessagePropertiesConverter
public void setMessagePropertiesConverter(org.springframework.amqp.rabbit.support.MessagePropertiesConverter messagePropertiesConverter) -
setAcknowledgeMode
public void setAcknowledgeMode(org.springframework.amqp.core.AcknowledgeMode acknowledgeMode) -
setAdviceChain
public void setAdviceChain(org.aopalliance.aop.Advice[] adviceChain) -
setAutoStartup
public void setAutoStartup(boolean autoStartup) -
setConcurrentConsumers
public void setConcurrentConsumers(int concurrentConsumers) -
setConsumersPerQueue
public void setConsumersPerQueue(java.lang.Integer consumersPerQueue) -
setErrorHandler
public void setErrorHandler(org.springframework.util.ErrorHandler errorHandler) -
setExposeListenerChannel
public void setExposeListenerChannel(boolean exposeListenerChannel) -
setPhase
public void setPhase(int phase) -
setPrefetchCount
public void setPrefetchCount(int prefetchCount) -
setPubSub
public void setPubSub(boolean pubSub) -
setReceiveTimeout
public void setReceiveTimeout(long receiveTimeout) -
setRecoveryInterval
public void setRecoveryInterval(long recoveryInterval) -
setShutdownTimeout
public void setShutdownTimeout(long shutdownTimeout) -
setTaskExecutor
public void setTaskExecutor(java.util.concurrent.Executor taskExecutor) -
setTransactionAttribute
public void setTransactionAttribute(org.springframework.transaction.interceptor.TransactionAttribute transactionAttribute) -
setTransactionManager
public void setTransactionManager(org.springframework.transaction.PlatformTransactionManager transactionManager) -
setBatchSize
public void setBatchSize(java.lang.Integer batchSize) -
setMaxSubscribers
public void setMaxSubscribers(int maxSubscribers) -
setMissingQueuesFatal
public void setMissingQueuesFatal(java.lang.Boolean missingQueuesFatal) -
setDefaultDeliveryMode
public void setDefaultDeliveryMode(org.springframework.amqp.core.MessageDeliveryMode defaultDeliveryMode) -
setExtractPayload
public void setExtractPayload(java.lang.Boolean extractPayload) -
setOutboundHeaderMapper
-
setInboundHeaderMapper
-
setHeadersLast
public void setHeadersLast(boolean headersLast) -
getObjectType
public java.lang.Class<?> getObjectType()- Specified by:
getObjectTypein interfaceorg.springframework.beans.factory.FactoryBean<AbstractAmqpChannel>- Specified by:
getObjectTypein classorg.springframework.beans.factory.config.AbstractFactoryBean<AbstractAmqpChannel>
-
createInstance
- Specified by:
createInstancein classorg.springframework.beans.factory.config.AbstractFactoryBean<AbstractAmqpChannel>
-
isAutoStartup
public boolean isAutoStartup()- Specified by:
isAutoStartupin interfaceorg.springframework.context.SmartLifecycle
-
getPhase
public int getPhase()- Specified by:
getPhasein interfaceorg.springframework.context.Phased- Specified by:
getPhasein interfaceorg.springframework.context.SmartLifecycle
-
isRunning
public boolean isRunning()- Specified by:
isRunningin interfaceorg.springframework.context.Lifecycle
-
start
public void start()- Specified by:
startin interfaceorg.springframework.context.Lifecycle
-
stop
public void stop()- Specified by:
stopin interfaceorg.springframework.context.Lifecycle
-
stop
public void stop(java.lang.Runnable callback)- Specified by:
stopin interfaceorg.springframework.context.SmartLifecycle
-
destroyInstance
- Overrides:
destroyInstancein classorg.springframework.beans.factory.config.AbstractFactoryBean<AbstractAmqpChannel>
-