You are on page 1of 3

Camel CBR Example

package mypkg; import javax.jms.ConnectionFactory; import org.apache.activemq.ActiveMQConnectionFactory; import org.apache.camel.CamelContext; import org.apache.camel.Exchange; import org.apache.camel.Processor; import org.apache.camel.builder.RouteBuilder; import org.apache.camel.component.jms.JmsComponent; import org.apache.camel.impl.DefaultCamelContext; import org.apache.camel.model.OtherwiseDefinition; import org.apache.camel.model.WhenDefinition;

public class CBR2Demo { public static void main(String[] args) throws Exception { CamelContext ctx=new DefaultCamelContext(); ConnectionFactory connectionFactory=new ActiveMQConnectionFactory("vm://localhost");ctx.addComponent("jms",JmsComponent.jmsCom ponentAutoAcknowledge(connectionFactory) ); ctx.addRoutes(new RouteBuilder() { @Override public void configure() throws Exception { from("file:src/pp?noop=true").to("jms:incomingOrders"); from("jms:incomingOrders")

.choice() .when(header("CamelFileName").endsWith(".xml")) .to("jms:XMLorders") .when(header("CamelFileName").endsWith(".csv")) .to("jms:CSVlorders") .otherwise() .to("jms:BadFile"); from("jms:XMLorders").process(new Processor() { public void process(Exchange arg0) throws Exception { System.out.println("recevd file name is=" + arg0.getIn().getHeader("CamelFileName"));

} }); from("jms:CSVlorders").process(new Processor() { public void process(Exchange arg0) throws Exception { System.out.println("recevd file name is=" + arg0.getIn().getHeader("CamelFileName"));

} });

from("jms:BadFile").process(new Processor() {

public void process(Exchange arg0) throws Exception {

System.out.println("Received bad file ="+arg0.getIn().getHeader("CamelFileName"));

} }); } });

ctx.start();

Thread.sleep(10000);

} }

You might also like