骆驼测试用原始路线中的直接替换 seda
camel test replace seda with direct in original route
camel测试,直接替换seda
在我的骆驼路线测试中,我想用直接替换 seda 调用,例如
而不是 "seda:Second_route_id" 我的消费者应该 "direct: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 ");
}
})
有一种 replaceFromWith
方法可用于在使用建议时将 seda 更改为直接。
replaceFromWith
是一种可能的方式:
camelContext.getRouteDefinition("Second_route_id").adviceWith(camelContext, new AdviceWithRouteBuilder() {
@Override
public void configure() throws Exception {
replaceFromWith("direct:Second_route_id");
}
});
camel测试,直接替换seda
在我的骆驼路线测试中,我想用直接替换 seda 调用,例如
而不是 "seda:Second_route_id" 我的消费者应该 "direct: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 ");
}
})
有一种 replaceFromWith
方法可用于在使用建议时将 seda 更改为直接。
replaceFromWith
是一种可能的方式:
camelContext.getRouteDefinition("Second_route_id").adviceWith(camelContext, new AdviceWithRouteBuilder() {
@Override
public void configure() throws Exception {
replaceFromWith("direct:Second_route_id");
}
});