@IntegrationManagedResource public abstract class AbstractMessageSource<T> extends AbstractExpressionEvaluator implements MessageSource<T>, MessageSourceMetrics, 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() |
int |
getMessageCount() |
long |
getMessageCountLong() |
IntegrationManagement.ManagementOverrides |
getOverrides()
Return the overrides.
|
boolean |
isCountsEnabled() |
boolean |
isLoggingEnabled() |
Message<T> |
receive()
Retrieve the next available message from this source.
|
void |
registerMetricsCaptor(MetricsCaptor metricsCaptorToSet)
Inject a
MetricsCaptor |
void |
reset() |
void |
setBeanName(String name) |
void |
setCountsEnabled(boolean countsEnabled) |
void |
setHeaderExpressions(Map<String,Expression> headerExpressions) |
void |
setLoggingEnabled(boolean loggingEnabled) |
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
messageCount
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 MessageSourceMetrics
public String getManagedType()
getManagedType
in interface MessageSourceMetrics
public void setManagedName(String managedName)
setManagedName
in interface MessageSourceMetrics
public String getManagedName()
getManagedName
in interface MessageSourceMetrics
public String getComponentName()
getComponentName
in interface NamedComponent
public boolean isCountsEnabled()
isCountsEnabled
in interface IntegrationManagement
public void setCountsEnabled(boolean countsEnabled)
setCountsEnabled
in interface IntegrationManagement
public boolean isLoggingEnabled()
isLoggingEnabled
in interface IntegrationManagement
public void setLoggingEnabled(boolean loggingEnabled)
setLoggingEnabled
in interface IntegrationManagement
public void reset()
reset
in interface IntegrationManagement
public int getMessageCount()
getMessageCount
in interface MessageSourceMetrics
public long getMessageCountLong()
getMessageCountLong
in interface MessageSourceMetrics
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