[
https://issues.apache.org/jira/browse/CAMEL-4118?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Work on CAMEL-4118 started by Ben O'Day.
> Improve the Aggregator to be able to force a flush all aggregated exchanges
> ---------------------------------------------------------------------------
>
> Key: CAMEL-4118
> URL: https://issues.apache.org/jira/browse/CAMEL-4118
> Project: Camel
> Issue Type: Improvement
> Affects Versions: 2.7.2
> Reporter: Christian Müller
> Assignee: Ben O'Day
> Fix For: 2.9.0
>
> Attachments: CAMEL-4097-4118.patch
>
>
> Imagine you process a big file with multiple financial transactions. After
> splitting the file into its individual transactions, we send they to an
> aggregator to group transactions for the same card/account together. At this
> time, we don't know how many transactions we have to group together. Only at
> the end of processing the input file, we know that we are done. At this time,
> we have to instruct the aggregator to "flush all aggregated exchanges".
> A workaround for the time being is, to inject the aggregator also into a bean
> which is called after the splitter. This bean can query for all keys with the
> "getKeys" method and than send a "flush" exchange to the aggregator
> (completionPredicate(header("flush"))). However it will still aggregate that
> "flush exchange". So take care of that in your custom aggregation strategy
> and enable eagerCheckCompletion, so the predicate is checked before
> aggregating.
> We had a similar question on the user list to "flush all aggregated
> exchanges" when Camel shut down.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira