26 lines
793 B
Java
26 lines
793 B
Java
package org.sysmon.agent;
|
|
|
|
import org.apache.camel.AggregationStrategy;
|
|
import org.apache.camel.Exchange;
|
|
|
|
import java.util.ArrayList;
|
|
|
|
//simply combines Exchange body values into an ArrayList<Object>
|
|
class ArrayListAggregationStrategy implements AggregationStrategy {
|
|
|
|
public Exchange aggregate(Exchange oldExchange, Exchange newExchange) {
|
|
Object newBody = newExchange.getIn().getBody();
|
|
ArrayList<Object> list = null;
|
|
if (oldExchange == null) {
|
|
list = new ArrayList<Object>();
|
|
list.add(newBody);
|
|
newExchange.getIn().setBody(list);
|
|
return newExchange;
|
|
} else {
|
|
list = oldExchange.getIn().getBody(ArrayList.class);
|
|
list.add(newBody);
|
|
return oldExchange;
|
|
}
|
|
}
|
|
}
|