Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import org.apache.camel.*;
- import org.apache.camel.builder.AdviceWithRouteBuilder;
- import org.apache.camel.builder.NotifyBuilder;
- import org.apache.camel.builder.RouteBuilder;
- import org.apache.camel.builder.ValueBuilder;
- import org.apache.camel.component.mock.MockEndpoint;
- import org.junit.Test;
- import org.slf4j.Logger;
- import org.slf4j.LoggerFactory;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.test.annotation.DirtiesContext;
- import org.springframework.test.context.ContextConfiguration;
- import org.springframework.test.context.junit4.AbstractTransactionalJUnit4SpringContextTests;
- import java.util.List;
- @ContextConfiguration(locations = "classpath:applicationContext.xml")
- public class JeroenTest extends AbstractTransactionalJUnit4SpringContextTests {
- private static final Logger log = LoggerFactory.getLogger(JeroenTest.class);
- @Produce(uri = "direct:start")
- protected ProducerTemplate inputTemplate;
- @EndpointInject(uri = "mock:output")
- protected MockEndpoint resultEndpoint;
- @Autowired
- private CamelContext context;
- @DirtiesContext
- @Test
- public void test() throws Exception {
- RouteBuilder rb = new RouteBuilder() {
- @Override
- public void configure() throws Exception {
- from("direct:start")
- .split().tokenizeXML("order","orders").streaming().shareUnitOfWork()
- .to("mock:output")
- .end();
- }
- };
- context.addRoutes(rb);
- inputTemplate.sendBody("<foo:orders xmlns:foo=\"http://foo.com\">\n" +
- " <foo:order id=\"1\">Camel in Action</foo:order>\n" +
- " <foo:order id=\"1\">ActiveMQ in Action</foo:order>\n" +
- " <foo:order id=\"1\">DSL in Action</foo:order>\n" +
- "</foo:orders>");
- List<Exchange> list = resultEndpoint.getExchanges();
- for (Exchange exchange : list) {
- log.debug("splitted xml: {}", exchange.getIn().getBody(String.class));
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement