35.4. ExchangeHelper Class
概述 复制链接链接已复制到粘贴板!
org.apache.camel.util.ExchangeHelper
类是一个 Apache Camel 实用程序类,提供在实施处理器时有用的方法。
解析端点 复制链接链接已复制到粘贴板!
静态 resolveEndpoint ()
方法是 ExchangeHelper
类中最有用的方法之一。您可以在处理器内使用它实时创建新的 端点
实例。
例 35.6. resolveEndpoint ()
方法
解析Endpoint ()
的第一个参数是一个交换实例,第二个参数通常是端点 URI 字符串。例 35.7 “创建文件端点” 显示如何从交换实例 交换
创建新文件端点
例 35.7. 创建文件端点
Endpoint file_endp = ExchangeHelper.resolveEndpoint(exchange, "file://tmp/messages/in.xml");
Endpoint file_endp = ExchangeHelper.resolveEndpoint(exchange, "file://tmp/messages/in.xml");
嵌套交换访问器 复制链接链接已复制到粘贴板!
ExchangeHelper
类提供多种形式的静态方法 getMandatoryBeanProperty(),
它封装了 Exchange
类上对应的 getBeanProperty()
方法。它们的区别在于,如果对应的属性不可用,则原始 getBeanProperty()
访问器返回 null
,而 getMandatoryBeanProperty()
打包程序方法会抛出 Java 异常。以下打包程序方法在 ExchangeHelper
类中实施:
测试交换模式 复制链接链接已复制到粘贴板!
有几个不同的交换模式与保存 In 信息兼容。有几个不同的交换模式还可与保存 Out 消息兼容。为了快速检查交换对象是否能够保存 In message 或 Out 信息,ExchangeHelper
类提供了以下方法:
获取 In message 的 MIME 内容类型 复制链接链接已复制到粘贴板!
如果要找出交换的 MIME 内容类型,可以通过调用 ExchangeHelper.getContentType (exchange)
方法来访问它。要实现此目的,ExchangeHelper
对象会查找 In message 的 Content-Type
标头的所有流量。此方法依赖于底层组件来填充标头值。