在 Java DSL 中为 apache 骆驼路线编写自定义方法
Writing Custom methods in Java DSL for apache camel routes
我可以在 Camel 中编写自己的处理器定义方法并在我的路由中使用它吗?
from(uri)
.to("http://host:port/testData")
.**setTimeOut(long milliseconds)**
from 在 RouteDefinition 中实现并且
to 在 ProcessorDefinition 中实现。就像那样,如果我想实现 setTimeOut 方法并在 java DSL 中使用它,我该怎么做?
PS : 我不想将超时作为 Httpclient 查询参数传递给 HttpUri。
任何人都可以帮忙吗?
不,你不能这样做。
您可以从 Java DSL 中使用的方法/eips 已修复。要扩展它需要扩展 RouteBuilder
允许将新方法添加到新的起始方法。您不能添加可以与 to
等一起使用的 setTimeOut
,等等
您需要将代码添加到 camel-core 中,然后重新编译,不推荐这样做。
不过你可以实现一个处理器,然后命名为setTimeout,然后使用.process
Processor setTimeout = new MySetTimeout(1000);
from
.to
.process(setTimeout);
然后将其用作.process
方法的处理器。
我可以在 Camel 中编写自己的处理器定义方法并在我的路由中使用它吗?
from(uri)
.to("http://host:port/testData")
.**setTimeOut(long milliseconds)**
from 在 RouteDefinition 中实现并且 to 在 ProcessorDefinition 中实现。就像那样,如果我想实现 setTimeOut 方法并在 java DSL 中使用它,我该怎么做?
PS : 我不想将超时作为 Httpclient 查询参数传递给 HttpUri。
任何人都可以帮忙吗?
不,你不能这样做。
您可以从 Java DSL 中使用的方法/eips 已修复。要扩展它需要扩展 RouteBuilder
允许将新方法添加到新的起始方法。您不能添加可以与 to
等一起使用的 setTimeOut
,等等
您需要将代码添加到 camel-core 中,然后重新编译,不推荐这样做。
不过你可以实现一个处理器,然后命名为setTimeout,然后使用.process
Processor setTimeout = new MySetTimeout(1000);
from
.to
.process(setTimeout);
然后将其用作.process
方法的处理器。