Package org.springframework.jms.config
Class JmsListenerEndpointRegistry
java.lang.Object
org.springframework.jms.config.JmsListenerEndpointRegistry
- All Implemented Interfaces:
EventListener
,org.springframework.beans.factory.Aware
,org.springframework.beans.factory.DisposableBean
,org.springframework.context.ApplicationContextAware
,org.springframework.context.ApplicationListener<org.springframework.context.event.ContextRefreshedEvent>
,org.springframework.context.Lifecycle
,org.springframework.context.Phased
,org.springframework.context.SmartLifecycle
public class JmsListenerEndpointRegistry
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>
Creates the necessary
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.
- Since:
- 4.1
- Author:
- Stephane Nicoll, Juergen Hoeller
- See Also:
-
Field Summary
Fields inherited from interface org.springframework.context.SmartLifecycle
DEFAULT_PHASE
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionprotected MessageListenerContainer
createListenerContainer
(JmsListenerEndpoint endpoint, JmsListenerContainerFactory<?> factory) Create and start a new container using the specified factory.void
destroy()
Return theMessageListenerContainer
with the specified id ornull
if no such container exists.Return the ids of the managedMessageListenerContainer
instance(s).Return the managedMessageListenerContainer
instance(s).int
getPhase()
boolean
void
onApplicationEvent
(org.springframework.context.event.ContextRefreshedEvent event) void
registerListenerContainer
(JmsListenerEndpoint endpoint, JmsListenerContainerFactory<?> factory) Create a message listener container for the givenJmsListenerEndpoint
.void
registerListenerContainer
(JmsListenerEndpoint endpoint, JmsListenerContainerFactory<?> factory, boolean startImmediately) Create a message listener container for the givenJmsListenerEndpoint
.void
setApplicationContext
(org.springframework.context.ApplicationContext applicationContext) void
start()
void
stop()
void
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.springframework.context.ApplicationListener
supportsAsyncExecution
Methods inherited from interface org.springframework.context.SmartLifecycle
isAutoStartup
-
Field Details
-
logger
protected final org.apache.commons.logging.Log logger
-
-
Constructor Details
-
JmsListenerEndpointRegistry
public JmsListenerEndpointRegistry()
-
-
Method Details
-
setApplicationContext
public void setApplicationContext(org.springframework.context.ApplicationContext applicationContext) - Specified by:
setApplicationContext
in interfaceorg.springframework.context.ApplicationContextAware
-
onApplicationEvent
public void onApplicationEvent(org.springframework.context.event.ContextRefreshedEvent event) - Specified by:
onApplicationEvent
in interfaceorg.springframework.context.ApplicationListener<org.springframework.context.event.ContextRefreshedEvent>
-
getListenerContainer
Return theMessageListenerContainer
with the specified id ornull
if no such container exists.- Parameters:
id
- the id of the container- Returns:
- the container or
null
if no container with that id exists - See Also:
-
getListenerContainerIds
Return the ids of the managedMessageListenerContainer
instance(s).- Since:
- 4.2.3
- See Also:
-
getListenerContainers
Return the managedMessageListenerContainer
instance(s). -
registerListenerContainer
public void registerListenerContainer(JmsListenerEndpoint endpoint, JmsListenerContainerFactory<?> factory, boolean startImmediately) Create a message listener container for the givenJmsListenerEndpoint
.This create the necessary infrastructure to honor that endpoint with regard to its configuration.
The
startImmediately
flag determines if the container should be started immediately.- Parameters:
endpoint
- the endpoint to addfactory
- the listener factory to usestartImmediately
- start the container immediately if necessary- See Also:
-
registerListenerContainer
public void registerListenerContainer(JmsListenerEndpoint endpoint, JmsListenerContainerFactory<?> factory) Create a message listener container for the givenJmsListenerEndpoint
.This create the necessary infrastructure to honor that endpoint with regard to its configuration.
- Parameters:
endpoint
- the endpoint to addfactory
- the listener factory to use- See Also:
-
createListenerContainer
protected MessageListenerContainer createListenerContainer(JmsListenerEndpoint endpoint, JmsListenerContainerFactory<?> factory) Create and start a new container using the specified factory. -
getPhase
public int getPhase()- Specified by:
getPhase
in interfaceorg.springframework.context.Phased
- Specified by:
getPhase
in interfaceorg.springframework.context.SmartLifecycle
-
start
public void start()- Specified by:
start
in interfaceorg.springframework.context.Lifecycle
-
stop
public void stop()- Specified by:
stop
in interfaceorg.springframework.context.Lifecycle
-
stop
- Specified by:
stop
in interfaceorg.springframework.context.SmartLifecycle
-
isRunning
public boolean isRunning()- Specified by:
isRunning
in interfaceorg.springframework.context.Lifecycle
-
destroy
public void destroy()- Specified by:
destroy
in interfaceorg.springframework.beans.factory.DisposableBean
-