当我想引用创建route in Apache Camel时使用的元素(如from
、setBody
、to
等)时,我应该使用什么名称?就称它为“函数”吗?我可以称它为“方法”吗?还是它有一个更具体、更合适的名称?
我看到人们称它为“动词”。这也是一个合适的提名吗?
路由定义示例如下:
from("rest:post:bin")
.removeHeader(Exchange.HTTP_URI)
.setHeader("CamelHttpMethod", constant("POST"))
.to("http://httpbin.org/anything")
.unmarshal().json(JsonLibrary.Gson)
.setBody(simple("${body[data]}"))
在本例中,我们使用Java DSL的from
、removeHeader
、setHeader
、to
、unmarshal
和setBody
元素。
我知道,在编程上,它们是函数和方法。但是使用代码并不是定义路由的唯一方法。例如,我们可以使用这些相同的元素来定义使用XML or Yaml DSL的路由。所以我认为简单地调用“函数”可能不是命名这些DSL元素的最合适的选择。
谢谢你!
1条答案
按热度按时间hgc7kmma1#
通常您应该使用企业集成模式手册和website中定义的术语。这是Camel文档使用的术语,Camel in Action手册使用的术语,以及在使用camel时通常认为最通用的术语,无论您使用xml-dsl、yaml-dsl还是Java-dsl。
Camel Java-DSL使用类似于Builder design pattern的东西来定义路由。
在Java-DSL中,当您在路由生成器中调用
from("direct:example")
方法时,Camel会创建带有direct:example
Consumer-endpoint的新RouteDefition。该方法返回RouteDefinition
对象,然后您可以使用该对象将生产者-端点和处理器添加到该RouteDefinition
(通常使用pipeline)。示例: