use of org.apache.camel.builder.AdviceWithRouteBuilder in project camel by apache.
the class AdviceWithWeaveFirstLastTest method testWeaveAddFirst.
@Test
public void testWeaveAddFirst() throws Exception {
// START SNIPPET: e1
context.getRouteDefinitions().get(0).adviceWith(context, new AdviceWithRouteBuilder() {
@Override
public void configure() throws Exception {
// insert at first the given piece of route to the existing route
weaveAddFirst().to("mock:a").transform(constant("Bye World"));
}
});
// END SNIPPET: e1
context.start();
getMockEndpoint("mock:a").expectedBodiesReceived("Hello World");
getMockEndpoint("mock:foo").expectedBodiesReceived("Bye World");
getMockEndpoint("mock:bar").expectedBodiesReceived("Bye World");
getMockEndpoint("mock:result").expectedBodiesReceived("Bye World");
template.sendBody("direct:start", "Hello World");
assertMockEndpointsSatisfied();
}
use of org.apache.camel.builder.AdviceWithRouteBuilder in project camel by apache.
the class IsUseAdviceWithJUnit4Test method testIsUseAdviceWith.
@Test
public void testIsUseAdviceWith() throws Exception {
context.getRouteDefinitions().get(0).adviceWith(context, new AdviceWithRouteBuilder() {
public void configure() throws Exception {
replaceFromWith(directEndPointURI);
interceptSendToEndpoint(providerEndPointURI).to("mock:intercepted").skipSendToOriginalEndpoint();
}
});
// we must manually start when we are done with all the advice with
context.start();
getMockEndpoint(mockEndPointURI).expectedBodiesReceived("a trigger");
getMockEndpoint("mock:intercepted").expectedBodiesReceived("a trigger");
template.sendBody(directEndPointURI, "a trigger");
assertMockEndpointsSatisfied();
assertNotNull(context.hasEndpoint(directEndPointURI));
assertNotNull(context.hasEndpoint(mockEndPointURI));
}
use of org.apache.camel.builder.AdviceWithRouteBuilder in project camel by apache.
the class AdviceWithTransactionIssueTest method testAdviceWithWeaveById.
@Test
public void testAdviceWithWeaveById() throws Exception {
context.getRouteDefinitions().get(0).adviceWith(context, new AdviceWithRouteBuilder() {
@Override
public void configure() throws Exception {
weaveById("mock-b*").after().to("mock:last");
}
});
context.start();
MockEndpoint mockLast = getMockEndpoint("mock:last");
mockLast.expectedBodiesReceived("bar");
mockLast.setExpectedMessageCount(1);
template.sendBody("activemq:queue:start", "bar");
assertMockEndpointsSatisfied();
}
use of org.apache.camel.builder.AdviceWithRouteBuilder in project camel by apache.
the class JMSTransactionIsTransactedRedeliveredTest method testTransactionSuccess.
@Test
public void testTransactionSuccess() throws Exception {
context.getRouteDefinitions().get(0).adviceWith(context, new AdviceWithRouteBuilder() {
@Override
public void configure() throws Exception {
onException(AssertionError.class).to("log:error", "mock:error");
}
});
context.start();
// there should be no assertion errors
MockEndpoint error = getMockEndpoint("mock:error");
error.expectedMessageCount(0);
MockEndpoint mock = getMockEndpoint("mock:result");
mock.expectedMessageCount(1);
mock.expectedBodiesReceived("Bye World");
// success at 3rd attempt
mock.message(0).header("count").isEqualTo(3);
MockEndpoint jetty = getMockEndpoint("mock:jetty");
jetty.expectedMessageCount(1);
template.sendBody("activemq:queue:okay", "Hello World");
mock.assertIsSatisfied();
jetty.assertIsSatisfied();
error.assertIsSatisfied();
}
use of org.apache.camel.builder.AdviceWithRouteBuilder in project camel by apache.
the class AdviceWithTransactionIssueTest method testAdviceWithWeaveById.
@Test
public void testAdviceWithWeaveById() throws Exception {
context.getRouteDefinitions().get(0).adviceWith(context, new AdviceWithRouteBuilder() {
@Override
public void configure() throws Exception {
weaveById("mock-b*").after().to("mock:last");
}
});
context.start();
MockEndpoint mockLast = getMockEndpoint("mock:last");
mockLast.expectedBodiesReceived("bar");
mockLast.setExpectedMessageCount(1);
template.sendBody("seda:start", "bar");
assertMockEndpointsSatisfied();
}
Aggregations