Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package testIntercept;
- import org.apache.camel.Exchange;
- import org.apache.camel.Processor;
- import org.apache.camel.builder.AdviceWithRouteBuilder;
- import org.apache.camel.builder.RouteBuilder;
- import org.apache.camel.test.junit4.CamelTestSupport;
- import org.junit.Test;
- public class AdviceWithCase1 extends CamelTestSupport {
- private String directEndPointURI = "direct:myDirect";
- private String providerEndPointURI = "http4:fakeeeeWebsite.com:80";
- private String mockEndPointURI = "mock:myMock";
- private boolean messageIntercepted;
- @Override
- protected RouteBuilder createRouteBuilder() throws Exception {
- return new RouteBuilder() {
- @Override
- public void configure() throws Exception {
- from(directEndPointURI)
- .to(providerEndPointURI)
- .to(mockEndPointURI);
- }
- };
- }
- @Test
- public void testWithoutOverrideIsUseAdviceWith() throws Exception {
- messageIntercepted = false;
- context.getRouteDefinitions().get(0).adviceWith(context, new AdviceWithRouteBuilder() {
- @Override
- public void configure() throws Exception {
- interceptSendToEndpoint(providerEndPointURI)
- .skipSendToOriginalEndpoint()
- .process(new Processor() {
- @Override
- public void process(Exchange exchange) throws Exception {
- messageIntercepted = true;
- }
- });
- }
- });
- getMockEndpoint(mockEndPointURI).expectedMessageCount(1);
- template.sendBody(directEndPointURI, "a trigger");
- assertMockEndpointsSatisfied();
- assertEquals(true, messageIntercepted);
- }
- @Override
- public boolean isUseRouteBuilder() {
- return true;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement