public class PollEnricher
extends org.apache.camel.support.AsyncProcessorSupport
implements org.apache.camel.spi.IdAware, org.apache.camel.spi.RouteIdAware, org.apache.camel.CamelContextAware
producer
and second by aggregating input data and additional data. Aggregation of input data
and additional data is delegated to an AggregationStrategy
object.
Uses a PollingConsumer
to obtain the additional data as opposed to Enricher
that
uses a Producer
.Enricher
Constructor and Description |
---|
PollEnricher(org.apache.camel.Expression expression,
long timeout)
Creates a new
PollEnricher . |
PollEnricher(String destination,
long timeout)
Creates a new
PollEnricher . |
Modifier and Type | Method and Description |
---|---|
protected void |
doInit() |
protected void |
doShutdown() |
protected void |
doStart() |
protected void |
doStop() |
org.apache.camel.AggregationStrategy |
getAggregationStrategy() |
int |
getCacheSize() |
org.apache.camel.CamelContext |
getCamelContext() |
org.apache.camel.spi.EndpointUtilizationStatistics |
getEndpointUtilizationStatistics() |
protected static org.apache.camel.Endpoint |
getExistingEndpoint(org.apache.camel.CamelContext context,
Object recipient) |
org.apache.camel.Expression |
getExpression() |
String |
getId() |
String |
getRouteId() |
long |
getTimeout() |
boolean |
isAggregateOnException() |
boolean |
isIgnoreInvalidEndpoint() |
protected void |
preCheckPoll(org.apache.camel.Exchange exchange)
Strategy to pre check polling.
|
protected static Object |
prepareRecipient(org.apache.camel.Exchange exchange,
Object recipient) |
boolean |
process(org.apache.camel.Exchange exchange,
org.apache.camel.AsyncCallback callback)
Enriches the input data (
exchange ) by first obtaining additional data from an endpoint represented
by an endpoint producer and second by aggregating input data and additional data. |
protected static org.apache.camel.Endpoint |
resolveEndpoint(org.apache.camel.CamelContext camelContext,
Object recipient,
boolean prototype) |
void |
setAggregateOnException(boolean aggregateOnException) |
void |
setAggregationStrategy(org.apache.camel.AggregationStrategy aggregationStrategy)
Sets the aggregation strategy for this poll enricher.
|
void |
setCacheSize(int cacheSize) |
void |
setCamelContext(org.apache.camel.CamelContext camelContext) |
void |
setDefaultAggregationStrategy()
Sets the default aggregation strategy for this poll enricher.
|
void |
setId(String id) |
void |
setIgnoreInvalidEndpoint(boolean ignoreInvalidEndpoint) |
void |
setRouteId(String routeId) |
void |
setTimeout(long timeout)
Sets the timeout to use when polling.
|
String |
toString() |
build, doBuild, doFail, doLifecycleChange, doResume, doSuspend, fail, getStatus, init, isBuild, isInit, isNew, isRunAllowed, isShutdown, isStarted, isStarting, isStartingOrStarted, isStopped, isStopping, isStoppingOrStopped, isSuspended, isSuspending, isSuspendingOrSuspended, resume, shutdown, start, stop, suspend
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
public PollEnricher(org.apache.camel.Expression expression, long timeout)
PollEnricher
.expression
- expression to use to compute the endpoint to poll from.timeout
- timeout in millispublic PollEnricher(String destination, long timeout)
PollEnricher
.destination
- the endpoint to poll from.timeout
- timeout in millispublic org.apache.camel.CamelContext getCamelContext()
getCamelContext
in interface org.apache.camel.CamelContextAware
public void setCamelContext(org.apache.camel.CamelContext camelContext)
setCamelContext
in interface org.apache.camel.CamelContextAware
public String getId()
getId
in interface org.apache.camel.spi.HasId
public void setId(String id)
setId
in interface org.apache.camel.spi.IdAware
public String getRouteId()
getRouteId
in interface org.apache.camel.spi.RouteIdAware
public void setRouteId(String routeId)
setRouteId
in interface org.apache.camel.spi.RouteIdAware
public org.apache.camel.Expression getExpression()
public org.apache.camel.spi.EndpointUtilizationStatistics getEndpointUtilizationStatistics()
public org.apache.camel.AggregationStrategy getAggregationStrategy()
public void setAggregationStrategy(org.apache.camel.AggregationStrategy aggregationStrategy)
aggregationStrategy
- the aggregationStrategy to setpublic long getTimeout()
public void setTimeout(long timeout)
timeout
- timeout in millis.public boolean isAggregateOnException()
public void setAggregateOnException(boolean aggregateOnException)
public void setDefaultAggregationStrategy()
public int getCacheSize()
public void setCacheSize(int cacheSize)
public boolean isIgnoreInvalidEndpoint()
public void setIgnoreInvalidEndpoint(boolean ignoreInvalidEndpoint)
protected void doInit() throws Exception
doInit
in class org.apache.camel.support.service.BaseService
Exception
public boolean process(org.apache.camel.Exchange exchange, org.apache.camel.AsyncCallback callback)
exchange
) by first obtaining additional data from an endpoint represented
by an endpoint producer
and second by aggregating input data and additional data. Aggregation of
input data and additional data is delegated to an AggregationStrategy
object set at construction time. If
the message exchange with the resource endpoint fails then no aggregation will be done and the failed exchange
content is copied over to the original message exchange.process
in interface org.apache.camel.AsyncProcessor
exchange
- input data.protected static Object prepareRecipient(org.apache.camel.Exchange exchange, Object recipient) throws org.apache.camel.NoTypeConversionAvailableException
org.apache.camel.NoTypeConversionAvailableException
protected static org.apache.camel.Endpoint getExistingEndpoint(org.apache.camel.CamelContext context, Object recipient)
protected static org.apache.camel.Endpoint resolveEndpoint(org.apache.camel.CamelContext camelContext, Object recipient, boolean prototype)
protected void preCheckPoll(org.apache.camel.Exchange exchange) throws Exception
exchange
- the current exchangeException
protected void doStart() throws Exception
doStart
in class org.apache.camel.support.AsyncProcessorSupport
Exception
protected void doStop() throws Exception
doStop
in class org.apache.camel.support.AsyncProcessorSupport
Exception
Apache Camel