Package org.marketcetera.modules.async
Modules that enable asynchronous processing of data objects in a data flow.
By default all the data items in a data flow are processed synchronously and delivery of the next data item has to wait until the previous data item has been processed. Modules in this package enable asynchronous processing of data items by decoupling the delivery and processing of data items.
The following module providers are available.
- Simple Async Processor : Instances of this module
can be inserted between any two modules within a data flow. The data
received from the upstream module is added to a queue for that data flow.
For each data flow that this module participates in, a separate thread
is spawned. That thread removes the data from the queue for the data flow
and sends it to the downstream module.
See
SimpleAsyncProcessorFactoryandSimpleAsyncProcessorfor more details
- Since:
- 2.0.0
- Version:
- $Id$
- Author:
- anshul@marketcetera.com
-
Interface Summary Interface Description Messages Internationalized messages for this package. -
Class Summary Class Description SimpleAsyncProcessor A processor module that can be inserted between any two modules within a data flow to decouple the delivery of data from the emitter module and processing of that data in the receiver module.SimpleAsyncProcessor.DataFlowHandler Instances of this class keep track of the queue of data items accumulated for the data flow and the thread that is responsible for processing those items.SimpleAsyncProcessorFactory Provider that instantiates modules that emit received data in a thread that is different from the thread on which the data is received..