T
- The payload type.@IntegrationManagedResource public abstract class AbstractMessageSource<T> extends AbstractExpressionEvaluator implements MessageSource<T>, IntegrationInboundManagement, NamedComponent, BeanNameAware
IntegrationManagement.ManagementOverrides
EXPRESSION_PARSER, logger
METER_PREFIX, RECEIVE_COUNTER_NAME, SEND_TIMER_NAME
Constructor and Description |
---|
AbstractMessageSource() |
Modifier and Type | Method and Description |
---|---|
protected Message<T> |
buildMessage(Object result) |
void |
destroy() |
protected abstract Object |
doReceive()
Subclasses must implement this method.
|
String |
getBeanName() |
String |
getComponentName() |
String |
getManagedName() |
String |
getManagedType() |
IntegrationManagement.ManagementOverrides |
getOverrides()
Return the overrides.
|
boolean |
isLoggingEnabled()
Return whether logging is enabled.
|
Message<T> |
receive()
Retrieve the next available message from this source.
|
void |
registerMetricsCaptor(MetricsCaptor metricsCaptorToSet)
Inject a
MetricsCaptor |
void |
setBeanName(String name) |
void |
setHeaderExpressions(Map<String,Expression> headerExpressions) |
void |
setLoggingEnabled(boolean loggingEnabled)
Enable logging or not.
|
void |
setManagedName(String managedName) |
void |
setManagedType(String managedType) |
afterPropertiesSet, evaluateExpression, evaluateExpression, evaluateExpression, evaluateExpression, evaluateExpression, evaluateExpression, evaluateExpression, getBeanFactory, getEvaluationContext, getEvaluationContext, getMessageBuilderFactory, onInit, setBeanFactory, setConversionService
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getIntegrationPatternType
getThisAs
getComponentType
public void setHeaderExpressions(@Nullable Map<String,Expression> headerExpressions)
public void registerMetricsCaptor(MetricsCaptor metricsCaptorToSet)
IntegrationManagement
MetricsCaptor
registerMetricsCaptor
in interface IntegrationManagement
metricsCaptorToSet
- the captor.public void setBeanName(String name)
setBeanName
in interface BeanNameAware
public String getBeanName()
getBeanName
in interface NamedComponent
public void setManagedType(String managedType)
setManagedType
in interface IntegrationManagement
public String getManagedType()
getManagedType
in interface IntegrationManagement
public void setManagedName(String managedName)
setManagedName
in interface IntegrationManagement
public String getManagedName()
getManagedName
in interface IntegrationManagement
public String getComponentName()
getComponentName
in interface NamedComponent
public boolean isLoggingEnabled()
IntegrationManagement
isLoggingEnabled
in interface IntegrationManagement
public void setLoggingEnabled(boolean loggingEnabled)
IntegrationManagement
setLoggingEnabled
in interface IntegrationManagement
loggingEnabled
- dalse to disable.public IntegrationManagement.ManagementOverrides getOverrides()
IntegrationManagement
getOverrides
in interface IntegrationManagement
public final Message<T> receive()
MessageSource
null
if no message is available.receive
in interface MessageSource<T>
@Nullable protected abstract Object doReceive()
payload
of
type T, but the returned value may also be a Message
instance whose payload is of type T;
also can be AbstractIntegrationMessageBuilder
which is used for additional headers population.public void destroy()
destroy
in interface DisposableBean
destroy
in interface IntegrationManagement