Susan Javurek created CAMEL-7433:
------------------------------------
Summary: Please create a preCompletionPredicate for camel
aggregator
Key: CAMEL-7433
URL: https://issues.apache.org/jira/browse/CAMEL-7433
Project: Camel
Issue Type: Improvement
Affects Versions: 2.10.7
Reporter: Susan Javurek
We often face the same issue when it comes to aggregating multiple records into
a single file.
A very common requirement that we have is that the aggregated files that we
produce must not be bigger than a certain size (for example, 10MB). Relying on
a predefined maximum of records or doing the size check after the aggregation
is not option.
So ideally, before an exchange (holding a single file record) gets aggregated
by a Camel aggregator, we should have a way to verify that the new exchange
will fit into the current aggregate. If not, the current aggregate should be
completed. And only after that, the new exchange could be aggregated.
This could be easily achieved if Camel's aggregator would have a new optional
attribute 'preCompletionPredicate'. This predicate could be have an
interface/signature as follows:
boolean preComplete(Exchange aggregate, Exchange newExchange);
The predicate implementation would then be able to use information from both
exchanges to know if the aggregate should be completed before aggregating the
new exchange or not.
--
This message was sent by Atlassian JIRA
(v6.2#6252)