骆驼测试用原路线直接替换色达

时间:2019-07-30 17:55:17

标签: apache-camel camel-test

骆驼测试,直接用seda代替。

在我的骆驼路线测试中,我想用例如Direct代替seda call

我的消费者应该使用“ direct:Second_route_id”代替“ seda:Second_route_id”

以下是我的原始路线

from("direct:First_route_id").id("First_route_id")
.process() // bla bla
.multicast()
.to("Second_route_id");

---
from("seda:Second_route_id").id("Second_route_id")
.proces() // save data
.end()

我试图做类似的事情

    context.getRouteDefination("First_route_id").adviceWith(context, new AdviceWithoutRouteBuilder(){
    public void configure(){
// but it gave me error no consumer found for "direct: Second_route_id"
    weaveById("Second_route_id").before().to("direct: Second_route_id "); 
    }
    })

2 个答案:

答案 0 :(得分:0)

有一种replaceFromWith方法,可用于在与建议一起使用时更改seda的方向。

答案 1 :(得分:0)

replaceFromWith是一种可能的方式:

    camelContext.getRouteDefinition("Second_route_id").adviceWith(camelContext, new AdviceWithRouteBuilder() {

        @Override
        public void configure() throws Exception {
            replaceFromWith("direct:Second_route_id");
        }
    });