Resequencer pattern for EIP component
-------------------------------------

                 Key: SM-1008
                 URL: https://issues.apache.org/activemq/browse/SM-1008
             Project: ServiceMix
          Issue Type: New Feature
          Components: servicemix-eip
    Affects Versions: 3.2
         Environment: Java 1.5
            Reporter: Martin Krasser
         Attachments: patch-servicemix-core.txt, patch-servicemix-eip.txt, 
resequencer-sample.zip

Attached are patches that include a resequencer endpoint for the servicemix-eip 
component.

- patch-servicemix-eip.txt: resequencer classes
- patch-servicemix-core.txt: general helper classes

The resequencing algorithm is designed to work on streams of objects (e.g. 
MessageExchanges) based on a timeout policy. It works slightly different than 
Camel's resequencer as it doesn't make batch-reads of predefined (maximum) size 
(although a capacity parameter prevents the resequencer from running out of 
memory). The algorithm details are described in the javadocs of class

- org.apache.servicemix.eip.support.resequence.ResequencerEngine

This class is independent of JBI/ServiceMix. It can be configured to work on 
any stream of objects by providing a SequenceElementComparator<E> 
implementation. The class

- org.apache.servicemix.eip.patterns.Resequencer

is the EIP endpoint that uses the resequencing algorithm. An example shows how 
to use the resequencer (resequencer-sample.zip), in addition to the unit tests.


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to