Hi,
Is it possible to "aggregate" zero messages with aggregator?
Here is my case (simplified) tested with Camel 2.9.2
from("direct:from")
.split(body().tokenize("\n"))
.filter(body().isNotEqualTo(""))
.aggregate(constant(true), new
MyAggregationStrategy()).completionTimeout(1000)
.log(LoggingLevel.INFO, "compleated by
${header.CamelAggregatedCompletedBy}").stop();
I get a file, split it into multiple lines, filter all blank lines,
aggregate it back.
If the file is empty or contains only blanks the .log line will never be
executed.
Moreover if MyAggregationStrategy implements
TimeoutAwareAggregationStrategy the timeout() method is never called.
By the way my case is equal to splitting input into zero elements
(imagine the input file is empty).
What is the recommended approach to such scenarios?
Thank you!
"This e-mail and any attachments to it (the "Communication") is, unless
otherwise stated, confidential, may contain copyright material and is for the
use only of the intended recipient. If you receive the Communication in error,
please notify the sender immediately by return e-mail, delete the Communication
and the return e-mail, and do not read, copy, retransmit or otherwise deal with
it. Any views expressed in the Communication are those of the individual sender
only, unless expressly stated to be those of Australia and New Zealand Banking
Group Limited ABN 11 005 357 522, or any of its related entities including ANZ
National Bank Limited (together "ANZ"). ANZ does not accept liability in
connection with the integrity of or errors in the Communication, computer
virus, data corruption, interference or delay arising from or in respect of the
Communication."