org.springframework.integration.amqp.channel
Class PublishSubscribeAmqpChannel
java.lang.Object
org.springframework.integration.context.IntegrationObjectSupport
org.springframework.integration.channel.AbstractMessageChannel
org.springframework.integration.amqp.channel.AbstractAmqpChannel
org.springframework.integration.amqp.channel.PublishSubscribeAmqpChannel
- All Implemented Interfaces:
- org.springframework.beans.factory.Aware, org.springframework.beans.factory.BeanFactoryAware, org.springframework.beans.factory.BeanNameAware, org.springframework.beans.factory.DisposableBean, org.springframework.beans.factory.InitializingBean, org.springframework.context.Lifecycle, org.springframework.context.Phased, org.springframework.context.SmartLifecycle, NamedComponent, SubscribableChannel, TrackableComponent, MessageChannel
public class PublishSubscribeAmqpChannel
- extends AbstractAmqpChannel
- Since:
- 2.1
- Author:
- Mark Fisher, Gary Russell
Constructor Summary |
PublishSubscribeAmqpChannel(java.lang.String channelName,
org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer container,
org.springframework.amqp.core.AmqpTemplate amqpTemplate)
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
PublishSubscribeAmqpChannel
public PublishSubscribeAmqpChannel(java.lang.String channelName,
org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer container,
org.springframework.amqp.core.AmqpTemplate amqpTemplate)
setExchange
public void setExchange(org.springframework.amqp.core.FanoutExchange exchange)
- Configure the FanoutExchange instance. If this is not provided, then a
FanoutExchange will be declared implicitly, and its name will be the same
as the channel name prefixed by "si.fanout.". In either case, an effectively
anonymous Queue will be declared automatically.
initializeQueue
protected org.springframework.amqp.core.Queue initializeQueue(org.springframework.amqp.core.AmqpAdmin admin,
java.lang.String channelName)
createDispatcher
protected MessageDispatcher createDispatcher()
getExchangeName
protected java.lang.String getExchangeName()
- Description copied from class:
AbstractAmqpChannel
- Subclasses may override this method to return an Exchange name.
By default, Messages will be sent to the no-name Direct Exchange.
- Overrides:
getExchangeName
in class AbstractAmqpChannel
setMaxSubscribers
public void setMaxSubscribers(int maxSubscribers)
- Specify the maximum number of subscribers supported by the
channel's dispatcher (if it is an
AbstractDispatcher
).
- Parameters:
maxSubscribers
-
subscribe
public boolean subscribe(MessageHandler handler)
- Description copied from interface:
SubscribableChannel
- Register a
MessageHandler
as a subscriber to this channel.
- Specified by:
subscribe
in interface SubscribableChannel
unsubscribe
public boolean unsubscribe(MessageHandler handler)
- Description copied from interface:
SubscribableChannel
- Remove a
MessageHandler
from the subscribers of this channel.
- Specified by:
unsubscribe
in interface SubscribableChannel
onInit
public void onInit()
throws java.lang.Exception
- Description copied from class:
IntegrationObjectSupport
- Subclasses may implement this for initialization logic.
- Overrides:
onInit
in class IntegrationObjectSupport
- Throws:
java.lang.Exception
isAutoStartup
public boolean isAutoStartup()
- Specified by:
isAutoStartup
in interface org.springframework.context.SmartLifecycle
getPhase
public int getPhase()
- Specified by:
getPhase
in interface org.springframework.context.Phased
isRunning
public boolean isRunning()
- Specified by:
isRunning
in interface org.springframework.context.Lifecycle
start
public void start()
- Specified by:
start
in interface org.springframework.context.Lifecycle
stop
public void stop()
- Specified by:
stop
in interface org.springframework.context.Lifecycle
stop
public void stop(java.lang.Runnable callback)
- Specified by:
stop
in interface org.springframework.context.SmartLifecycle
destroy
public void destroy()
throws java.lang.Exception
- Specified by:
destroy
in interface org.springframework.beans.factory.DisposableBean
- Throws:
java.lang.Exception