Skip to main content Skip to complementary content

Creating a Java bean as the aggregation strategy

About this task

To aggregate the messages, we will use a Java bean that will help us build an aggregation strategy.

Procedure

  1. From the repository tree view, expand the Code node and right click the Beans node. In the contextual menu, select Create Bean.
  2. The New Bean wizard opens. In the Name field, type in a name for the bean, for example, AggregateBody. Click Finish to close the wizard.
  3. Type in the codes as shown in the figure below. In this use case, we just want to aggregate all messages into a single message.
    package beans;
    
    import org.apache.camel.Exchange;
    import org.apache.camel.AggregationStrategy;
    
    public class AggregateBody implements AggregationStrategy{
    
    	public Exchange aggregate(Exchange oldEx, Exchange newEx) {
    		if(oldEx==null){
    			return newEx;
    		}
    		String oldBody = oldEx.getIn().getBody(String.class);
    		String newBody = newEx.getIn().getBody(String.class);
    		newEx.getIn().setBody(oldBody+newBody);
    		return newEx;
    	}
    }
  4. Press Ctrl+S to save your bean.

Did this page help you?

If you find any issues with this page or its content – a typo, a missing step, or a technical error – please let us know!