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, org.springframework.integration.context.NamedComponent, org.springframework.integration.core.SubscribableChannel, org.springframework.integration.history.TrackableComponent, org.springframework.integration.MessageChannel
public class PublishSubscribeAmqpChannel
- extends AbstractAmqpChannel
- Since:
- 2.1
| Nested classes/interfaces inherited from class org.springframework.integration.channel.AbstractMessageChannel |
org.springframework.integration.channel.AbstractMessageChannel.ChannelInterceptorList |
| Fields inherited from class org.springframework.integration.channel.AbstractMessageChannel |
logger |
|
Constructor Summary |
PublishSubscribeAmqpChannel(java.lang.String channelName,
org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer container,
org.springframework.amqp.core.AmqpTemplate amqpTemplate)
|
|
Method Summary |
protected org.springframework.integration.dispatcher.MessageDispatcher |
createDispatcher()
|
void |
destroy()
|
protected java.lang.String |
getExchangeName()
Subclasses may override this method to return an Exchange name. |
int |
getPhase()
|
protected org.springframework.amqp.core.Queue |
initializeQueue(org.springframework.amqp.core.AmqpAdmin admin,
java.lang.String channelName)
|
boolean |
isAutoStartup()
|
boolean |
isRunning()
|
void |
onInit()
|
void |
setExchange(org.springframework.amqp.core.FanoutExchange exchange)
Configure the FanoutExchange instance. |
void |
setMaxSubscribers(int maxSubscribers)
Specify the maximum number of subscribers supported by the
channel's dispatcher (if it is an AbstractDispatcher). |
void |
start()
|
void |
stop()
|
void |
stop(java.lang.Runnable callback)
|
boolean |
subscribe(org.springframework.integration.core.MessageHandler handler)
|
boolean |
unsubscribe(org.springframework.integration.core.MessageHandler handler)
|
| Methods inherited from class org.springframework.integration.channel.AbstractMessageChannel |
addInterceptor, getComponentType, getInterceptors, send, send, setConversionService, setDatatypes, setInterceptors, setShouldTrack |
| Methods inherited from class org.springframework.integration.context.IntegrationObjectSupport |
afterPropertiesSet, getBeanFactory, getComponentName, getConversionService, getTaskScheduler, setBeanFactory, setBeanName, setComponentName, setTaskScheduler, toString |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Methods inherited from interface org.springframework.integration.MessageChannel |
send, send |
| Methods inherited from interface org.springframework.integration.context.NamedComponent |
getComponentName |
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 org.springframework.integration.dispatcher.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(org.springframework.integration.core.MessageHandler handler)
- Specified by:
subscribe in interface org.springframework.integration.core.SubscribableChannel
unsubscribe
public boolean unsubscribe(org.springframework.integration.core.MessageHandler handler)
- Specified by:
unsubscribe in interface org.springframework.integration.core.SubscribableChannel
onInit
public void onInit()
throws java.lang.Exception
- Overrides:
onInit in class org.springframework.integration.context.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