|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.springframework.integration.bus.MessageBus
public class MessageBus
The messaging bus. Serves as a registry for channels and endpoints, manages their lifecycle, and activates subscriptions.
Field Summary | |
---|---|
private boolean |
autoCreateChannels
|
private boolean |
autoStartup
|
private ChannelFactory |
channelFactory
|
private ChannelRegistry |
channelRegistry
|
private boolean |
configureAsyncEventMulticaster
|
private static int |
DEFAULT_DISPATCHER_POOL_SIZE
|
private ConcurrencyPolicy |
defaultConcurrencyPolicy
|
private EndpointRegistry |
endpointRegistry
|
static java.lang.String |
ERROR_CHANNEL_NAME
|
private java.util.concurrent.ScheduledExecutorService |
executor
|
private boolean |
initialized
|
private boolean |
initializing
|
private java.util.List<org.springframework.context.Lifecycle> |
lifecycleEndpoints
|
private java.lang.Object |
lifecycleMonitor
|
private org.apache.commons.logging.Log |
logger
|
private boolean |
running
|
private boolean |
starting
|
private java.util.Map<MessageChannel,SubscriptionManager> |
subscriptionManagers
|
private MessagingTaskScheduler |
taskScheduler
|
Constructor Summary | |
---|---|
MessageBus()
|
Method Summary | |
---|---|
private void |
activateEndpoint(MessageEndpoint endpoint)
|
private void |
activateEndpoints()
|
private void |
activateSubscription(MessageChannel channel,
Target target,
Schedule schedule)
|
private void |
activateTargetEndpoint(TargetEndpoint endpoint)
|
private void |
doConfigureAsyncEventMulticaster(org.springframework.context.ApplicationContext context)
|
private void |
doRegisterEndpoint(java.lang.String name,
TargetEndpoint endpoint,
Subscription subscription,
ConcurrencyPolicy concurrencyPolicy)
|
ChannelFactory |
getChannelFactory()
|
java.util.Set<java.lang.String> |
getEndpointNames()
|
MessageChannel |
getErrorChannel()
|
void |
initialize()
|
boolean |
isRunning()
|
MessageChannel |
lookupChannel(java.lang.String channelName)
|
MessageEndpoint |
lookupEndpoint(java.lang.String endpointName)
|
void |
onApplicationEvent(org.springframework.context.ApplicationEvent event)
|
void |
registerChannel(java.lang.String name,
MessageChannel channel)
|
private void |
registerChannels(org.springframework.context.ApplicationContext context)
|
void |
registerEndpoint(java.lang.String name,
MessageEndpoint endpoint)
|
private void |
registerEndpoints(org.springframework.context.ApplicationContext context)
|
void |
registerHandler(java.lang.String name,
MessageHandler handler,
Subscription subscription)
|
void |
registerHandler(java.lang.String name,
MessageHandler handler,
Subscription subscription,
ConcurrencyPolicy concurrencyPolicy)
|
private void |
registerSourceEndpoint(java.lang.String name,
SourceEndpoint endpoint)
|
void |
registerTarget(java.lang.String name,
Target target,
Subscription subscription)
|
void |
registerTarget(java.lang.String name,
Target target,
Subscription subscription,
ConcurrencyPolicy concurrencyPolicy)
|
private void |
registerTargetEndpoint(java.lang.String name,
TargetEndpoint endpoint)
|
void |
setApplicationContext(org.springframework.context.ApplicationContext applicationContext)
|
void |
setAutoCreateChannels(boolean autoCreateChannels)
Set whether the bus should automatically create a channel when a subscription contains the name of a previously unregistered channel. |
void |
setAutoStartup(boolean autoStartup)
Set whether to automatically start the bus after initialization. |
void |
setChannelFactory(ChannelFactory channelFactory)
Set the ChannelFactory to use for auto-creating channels. |
void |
setConfigureAsyncEventMulticaster(boolean configureAsyncEventMulticaster)
Set whether the bus should configure its asynchronous task executor to also be used by the ApplicationContext's 'applicationEventMulticaster'. |
void |
setDefaultConcurrencyPolicy(ConcurrencyPolicy defaultConcurrencyPolicy)
Specify the default concurrency policy to be used for any endpoint that is registered without an explicitly provided policy of its own. |
void |
setErrorChannel(MessageChannel errorChannel)
|
void |
setScheduledExecutorService(java.util.concurrent.ScheduledExecutorService executor)
Set the ScheduledExecutorService to use for scheduling message dispatchers. |
void |
start()
|
void |
stop()
|
MessageChannel |
unregisterChannel(java.lang.String name)
|
MessageEndpoint |
unregisterEndpoint(java.lang.String name)
|
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final java.lang.String ERROR_CHANNEL_NAME
private static final int DEFAULT_DISPATCHER_POOL_SIZE
private final org.apache.commons.logging.Log logger
private volatile ChannelFactory channelFactory
private final ChannelRegistry channelRegistry
private final EndpointRegistry endpointRegistry
private final java.util.Map<MessageChannel,SubscriptionManager> subscriptionManagers
private final java.util.List<org.springframework.context.Lifecycle> lifecycleEndpoints
private volatile MessagingTaskScheduler taskScheduler
private volatile java.util.concurrent.ScheduledExecutorService executor
private volatile ConcurrencyPolicy defaultConcurrencyPolicy
private volatile boolean configureAsyncEventMulticaster
private volatile boolean autoCreateChannels
private volatile boolean autoStartup
private volatile boolean initialized
private volatile boolean initializing
private volatile boolean starting
private volatile boolean running
private final java.lang.Object lifecycleMonitor
Constructor Detail |
---|
public MessageBus()
Method Detail |
---|
public void setChannelFactory(ChannelFactory channelFactory)
ChannelFactory
to use for auto-creating channels.
public ChannelFactory getChannelFactory()
public void setApplicationContext(org.springframework.context.ApplicationContext applicationContext) throws org.springframework.beans.BeansException
setApplicationContext
in interface org.springframework.context.ApplicationContextAware
org.springframework.beans.BeansException
public void setScheduledExecutorService(java.util.concurrent.ScheduledExecutorService executor)
ScheduledExecutorService
to use for scheduling message dispatchers.
public void setDefaultConcurrencyPolicy(ConcurrencyPolicy defaultConcurrencyPolicy)
public void setAutoStartup(boolean autoStartup)
Default is 'true'; set this to 'false' to allow for manual startup
through the start()
method.
public void setAutoCreateChannels(boolean autoCreateChannels)
public void setConfigureAsyncEventMulticaster(boolean configureAsyncEventMulticaster)
private void registerChannels(org.springframework.context.ApplicationContext context)
private void registerEndpoints(org.springframework.context.ApplicationContext context)
public void initialize()
public MessageChannel getErrorChannel()
public void setErrorChannel(MessageChannel errorChannel)
public MessageChannel lookupChannel(java.lang.String channelName)
lookupChannel
in interface ChannelRegistry
public void registerChannel(java.lang.String name, MessageChannel channel)
registerChannel
in interface ChannelRegistry
public MessageChannel unregisterChannel(java.lang.String name)
unregisterChannel
in interface ChannelRegistry
public void registerHandler(java.lang.String name, MessageHandler handler, Subscription subscription)
public void registerHandler(java.lang.String name, MessageHandler handler, Subscription subscription, ConcurrencyPolicy concurrencyPolicy)
public void registerTarget(java.lang.String name, Target target, Subscription subscription)
public void registerTarget(java.lang.String name, Target target, Subscription subscription, ConcurrencyPolicy concurrencyPolicy)
private void doRegisterEndpoint(java.lang.String name, TargetEndpoint endpoint, Subscription subscription, ConcurrencyPolicy concurrencyPolicy)
public void registerEndpoint(java.lang.String name, MessageEndpoint endpoint)
registerEndpoint
in interface EndpointRegistry
private void registerTargetEndpoint(java.lang.String name, TargetEndpoint endpoint)
public MessageEndpoint unregisterEndpoint(java.lang.String name)
unregisterEndpoint
in interface EndpointRegistry
public MessageEndpoint lookupEndpoint(java.lang.String endpointName)
lookupEndpoint
in interface EndpointRegistry
public java.util.Set<java.lang.String> getEndpointNames()
getEndpointNames
in interface EndpointRegistry
private void activateEndpoints()
private void activateEndpoint(MessageEndpoint endpoint)
private void activateTargetEndpoint(TargetEndpoint endpoint)
private void registerSourceEndpoint(java.lang.String name, SourceEndpoint endpoint)
private void activateSubscription(MessageChannel channel, Target target, Schedule schedule)
public boolean isRunning()
isRunning
in interface org.springframework.context.Lifecycle
public void start()
start
in interface org.springframework.context.Lifecycle
public void stop()
stop
in interface org.springframework.context.Lifecycle
public void onApplicationEvent(org.springframework.context.ApplicationEvent event)
onApplicationEvent
in interface org.springframework.context.ApplicationListener
private void doConfigureAsyncEventMulticaster(org.springframework.context.ApplicationContext context)
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |