org.apache.camel
Interface AsyncProcessor

All Superinterfaces:
Processor
All Known Subinterfaces:
Channel, LoadBalancer, ModelChannel
All Known Implementing Classes:
AggregateProcessor, AOPProcessor, BatchProcessor, BeanProcessor, CamelInternalProcessor, CamelLogger, CamelLogProcessor, CatchProcessor, ChoiceProcessor, CollectionProducer, ControlBusProducer, ConvertBodyProcessor, CustomLoadBalancerDefinition, DeadLetterChannel, DefaultAsyncProducer, DefaultChannel, DefaultErrorHandler, Delayer, DelayInterceptor, DelayProcessorSupport, DelegateAsyncProcessor, DelegateSyncProcessor, DirectBlockingProducer, DirectProducer, DirectVmBlockingProducer, DirectVmProcessor, DirectVmProducer, DynamicRouter, Enricher, EvaluateExpressionProcessor, ExchangePatternProcessor, FailOverLoadBalancer, FailoverLoadBalancerDefinition, FatalFallbackErrorHandler, FilterProcessor, FinallyProcessor, HandleFaultInterceptor, IdempotentConsumer, InstrumentationProcessor, InterceptEndpointProcessor, InterceptorToAsyncProcessorBridge, LoadBalancerDefinition, LoadBalancerSupport, LoggingErrorHandler, LogProcessor, LogProducer, LoopProcessor, MarshalProcessor, MulticastProcessor, OnCompletionProcessor, Pipeline, PollEnricher, QueueLoadBalancer, RandomLoadBalancer, RandomLoadBalancerDefinition, RecipientList, RecipientListProcessor, RedeliveryErrorHandler, Resequencer, RollbackProcessor, RoundRobinLoadBalancer, RoundRobinLoadBalancerDefinition, RoutingSlip, SamplingThrottler, SedaProducer, SendProcessor, SetBodyProcessor, SimpleLoadBalancerSupport, SortProcessor, Splitter, StickyLoadBalancer, StickyLoadBalancerDefinition, StopProcessor, StreamCachingInterceptor, StreamResequencer, ThreadsProcessor, Throttler, ThroughputLogger, ThrowExceptionProcessor, TopicLoadBalancer, TopicLoadBalancerDefinition, TraceInterceptor, TransformProcessor, TryProcessor, UnmarshalProcessor, ValidatingProcessor, WeightedLoadBalancer, WeightedLoadBalancerDefinition, WeightedRandomLoadBalancer, WeightedRoundRobinLoadBalancer, WireTapProcessor, WrapProcessor

public interface AsyncProcessor
extends Processor

An asynchronous processor which can process an Exchange in an asynchronous fashion and signal completion by invoking the AsyncCallback.

Any processor can be coerced to have an AsyncProcessor interface by using the AsyncProcessorTypeConverter.covert method.

Version:

Method Summary
 boolean process(Exchange exchange, AsyncCallback callback)
          Processes the message exchange.
 
Methods inherited from interface org.apache.camel.Processor
process
 

Method Detail

process

boolean process(Exchange exchange,
                AsyncCallback callback)
Processes the message exchange. Similar to Processor.process(org.apache.camel.Exchange), but the caller supports having the exchange asynchronously processed.

If there was a failure processing then the caused Exception would be set on the Exchange.

Parameters:
exchange - the message exchange
callback - the AsyncCallback will be invoked when the processing of the exchange is completed. If the exchange is completed synchronously, then the callback is also invoked synchronously. The callback should therefore be careful of starting recursive loop.
Returns:
(doneSync) true to continue execute synchronously, false to continue being executed asynchronously


Apache Camel