public class RabbitListenerEndpointRegistry extends Object implements org.springframework.beans.factory.DisposableBean, org.springframework.context.SmartLifecycle, org.springframework.context.ApplicationContextAware, org.springframework.context.ApplicationListener<org.springframework.context.event.ContextRefreshedEvent>
MessageListenerContainer instances for the
registered endpoints. Also manages the
lifecycle of the listener containers, in particular within the lifecycle
of the application context.
Contrary to MessageListenerContainers created manually, listener
containers managed by registry are not beans in the application context and
are not candidates for autowiring. Use getListenerContainers() if
you need to access this registry's listener containers for management purposes.
If you need to access to a specific message listener container, use
getListenerContainer(String) with the id of the endpoint.
RabbitListenerEndpoint,
MessageListenerContainer,
RabbitListenerContainerFactory| Modifier and Type | Field and Description |
|---|---|
protected org.apache.commons.logging.Log |
logger |
| Constructor and Description |
|---|
RabbitListenerEndpointRegistry() |
| Modifier and Type | Method and Description |
|---|---|
protected MessageListenerContainer |
createListenerContainer(RabbitListenerEndpoint endpoint,
RabbitListenerContainerFactory<?> factory)
Create and start a new
MessageListenerContainer using the specified factory. |
void |
destroy() |
MessageListenerContainer |
getListenerContainer(String id)
Return the
MessageListenerContainer with the specified id or
null if no such container exists. |
Set<String> |
getListenerContainerIds()
Return the ids of the managed
MessageListenerContainer instance(s). |
Collection<MessageListenerContainer> |
getListenerContainers() |
int |
getPhase() |
boolean |
isAutoStartup() |
boolean |
isRunning() |
void |
onApplicationEvent(org.springframework.context.event.ContextRefreshedEvent event) |
void |
registerListenerContainer(RabbitListenerEndpoint endpoint,
RabbitListenerContainerFactory<?> factory)
Create a message listener container for the given
RabbitListenerEndpoint. |
void |
registerListenerContainer(RabbitListenerEndpoint endpoint,
RabbitListenerContainerFactory<?> factory,
boolean startImmediately)
Create a message listener container for the given
RabbitListenerEndpoint. |
void |
setApplicationContext(org.springframework.context.ApplicationContext applicationContext) |
void |
start() |
void |
stop() |
void |
stop(Runnable callback) |
public void setApplicationContext(org.springframework.context.ApplicationContext applicationContext)
throws org.springframework.beans.BeansException
setApplicationContext in interface org.springframework.context.ApplicationContextAwareorg.springframework.beans.BeansExceptionpublic MessageListenerContainer getListenerContainer(String id)
MessageListenerContainer with the specified id or
null if no such container exists.id - the id of the containernull if no container with that id existsRabbitListenerEndpoint.getId(),
getListenerContainerIds()public Set<String> getListenerContainerIds()
MessageListenerContainer instance(s).getListenerContainer(String)public Collection<MessageListenerContainer> getListenerContainers()
MessageListenerContainer instance(s).public void registerListenerContainer(RabbitListenerEndpoint endpoint, RabbitListenerContainerFactory<?> factory)
RabbitListenerEndpoint.
This create the necessary infrastructure to honor that endpoint with regards to its configuration.
endpoint - the endpoint to addfactory - the listener factory to useregisterListenerContainer(RabbitListenerEndpoint, RabbitListenerContainerFactory, boolean)public void registerListenerContainer(RabbitListenerEndpoint endpoint, RabbitListenerContainerFactory<?> factory, boolean startImmediately)
RabbitListenerEndpoint.
This create the necessary infrastructure to honor that endpoint with regards to its configuration.
The startImmediately flag determines if the container should be
started immediately.
endpoint - the endpoint to add.factory - the RabbitListenerContainerFactory to use.startImmediately - start the container immediately if necessarygetListenerContainers(),
getListenerContainer(String)protected MessageListenerContainer createListenerContainer(RabbitListenerEndpoint endpoint, RabbitListenerContainerFactory<?> factory)
MessageListenerContainer using the specified factory.endpoint - the endpoint to create a MessageListenerContainer.factory - the RabbitListenerContainerFactory to use.MessageListenerContainer.public void destroy()
destroy in interface org.springframework.beans.factory.DisposableBeanpublic int getPhase()
getPhase in interface org.springframework.context.Phasedpublic boolean isAutoStartup()
isAutoStartup in interface org.springframework.context.SmartLifecyclepublic void start()
start in interface org.springframework.context.Lifecyclepublic void stop()
stop in interface org.springframework.context.Lifecyclepublic void stop(Runnable callback)
stop in interface org.springframework.context.SmartLifecyclepublic boolean isRunning()
isRunning in interface org.springframework.context.Lifecyclepublic void onApplicationEvent(org.springframework.context.event.ContextRefreshedEvent event)
onApplicationEvent in interface org.springframework.context.ApplicationListener<org.springframework.context.event.ContextRefreshedEvent>