View Javadoc

1   package org.srinivas.siteworks.fecamelworks;
2   
3   import org.apache.camel.Exchange;
4   import org.apache.camel.processor.aggregate.AggregationStrategy;
5   import org.slf4j.Logger;
6   import org.slf4j.LoggerFactory;
7   
8   /**
9    * The Class StringAggregationStrategy.
10   */
11  public class StringAggregationStrategy implements AggregationStrategy {
12  	private static final Logger log = LoggerFactory.getLogger(StringAggregationStrategy.class);
13  
14  	/* (non-Javadoc)
15  	 * @see org.apache.camel.processor.aggregate.AggregationStrategy#aggregate(org.apache.camel.Exchange, org.apache.camel.Exchange)
16  	 */
17  	@Override
18  	public Exchange aggregate(Exchange oldExchange, Exchange newExchange) {
19  		if (oldExchange == null) {
20  			return newExchange;
21  		}
22  		String oldBody = oldExchange.getIn().getBody(String.class);
23  		String newBody = newExchange.getIn().getBody(String.class);
24  		oldExchange.getIn().setBody(oldBody + "+" + newBody);
25  		log.info("Aggregated using StringAggregationStrategy");
26  		return oldExchange;
27  	}
28  
29  }