public abstract class AbstractEndpoint extends IntegrationObjectSupport implements org.springframework.context.SmartLifecycle
This class implements Lifecycle and provides an autoStartup
property. If true, the endpoint will start automatically upon
initialization. Otherwise, it will require an explicit invocation of its
start() method. The default value is true.
To require explicit startup, provide a value of false
to the setAutoStartup(boolean) method.
| Modifier and Type | Field and Description |
|---|---|
protected java.util.concurrent.locks.Condition |
lifecycleCondition |
protected java.util.concurrent.locks.ReentrantLock |
lifecycleLock |
EXPRESSION_PARSER, logger| Constructor and Description |
|---|
AbstractEndpoint() |
| Modifier and Type | Method and Description |
|---|---|
protected abstract void |
doStart()
Subclasses must implement this method with the start behavior.
|
protected abstract void |
doStop()
Subclasses must implement this method with the stop behavior.
|
protected void |
doStop(java.lang.Runnable callback)
Stop the component and invoke callback.
|
int |
getPhase() |
boolean |
isAutoStartup() |
boolean |
isRunning() |
void |
setAutoStartup(boolean autoStartup) |
void |
setPhase(int phase) |
void |
setTaskScheduler(org.springframework.scheduling.TaskScheduler taskScheduler) |
void |
start() |
void |
stop() |
void |
stop(java.lang.Runnable callback) |
afterPropertiesSet, extractTypeIfPossible, getApplicationContext, getApplicationContextId, getBeanFactory, getChannelResolver, getComponentName, getComponentType, getConversionService, getExpression, getIntegrationProperties, getIntegrationProperty, getMessageBuilderFactory, getTaskScheduler, onInit, setApplicationContext, setBeanFactory, setBeanName, setChannelResolver, setComponentName, setConversionService, setMessageBuilderFactory, setPrimaryExpression, toStringprotected final java.util.concurrent.locks.ReentrantLock lifecycleLock
protected final java.util.concurrent.locks.Condition lifecycleCondition
public void setAutoStartup(boolean autoStartup)
public void setPhase(int phase)
public void setTaskScheduler(org.springframework.scheduling.TaskScheduler taskScheduler)
setTaskScheduler in class IntegrationObjectSupportpublic final boolean isAutoStartup()
isAutoStartup in interface org.springframework.context.SmartLifecyclepublic final int getPhase()
getPhase in interface org.springframework.context.Phasedpublic final boolean isRunning()
isRunning in interface org.springframework.context.Lifecyclepublic final void start()
start in interface org.springframework.context.Lifecyclepublic final void stop()
stop in interface org.springframework.context.Lifecyclepublic final void stop(java.lang.Runnable callback)
stop in interface org.springframework.context.SmartLifecycleprotected void doStop(java.lang.Runnable callback)
callback - the Runnable to invoke.protected abstract void doStart()
lifecycleLock.protected abstract void doStop()
lifecycleLock.