163.2. URI 选项
生产者允许将消息发送到注册表中配置的本地 infinispan 缓存,或者使用 HotRod 协议发送到远程缓存。消费者允许从 registry 访问的本地 infinispan 缓存侦听事件。
Infinispan 组件支持 3 个选项,如下所列。
名称 | 描述 | 默认值 | 类型 |
---|---|---|---|
configuration (common) | 在端点之间共享的默认配置。 | InfinispanConfiguration | |
cacheContainer (common) | 默认缓存容器。 | BasicCacheContainer | |
resolveProperty Placeholders (advanced) | 启动时组件是否应解析自身上的属性占位符。只有属于 String 类型的属性才能使用属性占位符。 | true | 布尔值 |
Infinispan 端点使用 URI 语法进行配置:
infinispan:cacheName
使用以下路径和查询参数:
163.2.1. 路径参数(1 参数):
名称 | 描述 | 默认值 | 类型 |
---|---|---|---|
cacheName | 需要使用 缓存 | 字符串 |
163.2.2. 查询参数(18 参数):
名称 | 描述 | 默认值 | 类型 |
---|---|---|---|
hosts (common) | 指定 Infinispan 实例上缓存的主机 | 字符串 | |
queryBuilder (common) | 指定查询构建器。 | InfinispanQueryBuilder | |
bridgeErrorHandler (consumer) | 允许将消费者桥接到 Camel 路由错误处理程序,这意味着当消费者试图选择传入消息或类似信息时发生异常,现在将作为消息处理并由路由 Error Handler 处理。默认情况下,使用者将使用 org.apache.camel.spi.ExceptionHandler 来处理例外情况,该处理程序将被记录在 WARN 或 ERROR 级别,并忽略。 | false | 布尔值 |
clusteredListener (consumer) | 如果为 true,则会为整个集群安装监听程序 | false | 布尔值 |
command (consumer) | 弃用 要执行的操作。 | PUT | 字符串 |
customListener (consumer) | 如果提供,则返回使用中的自定义监听程序 | InfinispanCustom Listener | |
eventTypes (consumer) | 指定要由消费者注册的事件类型集合。可以使用逗号分隔多个事件。可能的事件类型是:CACHE_ENTRY_ACTIVATED, CACHE_ENTRY_PASSIVATED, CACHE_ENTRY_VISITED, CACHE_ENTRY_LOADED, CACHE_ENTRY_EVICTED, CACHE_ENTRY_CREATED, cache_ENTRY_REMOVED, cache_ENTRY_MODIFIED, transACTION_COMPLETED, transACTION_REGISTERED, cache_ENTRY_INVALIDATED, data_REHASHED, topOLOGY_CHANGED, partition_STATUS_CHANGED | 字符串 | |
sync (consumer) | 如果为 true,消费者将同步接收通知 | true | 布尔值 |
exceptionHandler (consumer) | 要让使用者使用自定义例外处理程序:请注意,如果启用了 bridgeErrorHandler 选项,则此选项不使用。默认情况下,消费者将处理异常,其记录在 WARN 或 ERROR 级别中,并忽略。 | ExceptionHandler | |
exchangePattern (consumer) | 在消费者创建交换时设置交换模式。 | ExchangePattern | |
operation (producer) | 要执行的操作。 | PUT | InfinispanOperation |
cacheContainer (advanced) | 指定要连接的缓存容器 | BasicCacheContainer | |
cacheContainerConfiguration (advanced) | CacheContainer 配置。如果没有定义 cacheContainer,则使用。必须是以下类型:用于远程缓存交互配置的 org.infinispan.client.hotrod.configuration.Configuration - 用于嵌入式缓存交互配置; | 对象 | |
configurationProperties (advanced) | 为 CacheManager 实现特定属性 | Map | |
configurationUri (advanced) | CacheManager 的实现特定 URI | 字符串 | |
标记 (advanced) | 默认情况下,每个缓存调用中要应用的以逗号分隔的标记列表,不适用于远程缓存。 | 字符串 | |
resultHeader (advanced) | 将操作结果存储在标头中,而不是消息正文。默认情况下,resultHeader == null,查询结果存储在消息正文中,消息正文中的任何现有内容都会被丢弃。如果设置了 resultHeader,则该值将用作标头的名称,以存储查询结果,并保留原始消息正文。这个值可以被名为:CamelInfinispanOperationResultHeader 的消息标头覆盖 | 对象 | |
同步 (advanced) | 设置是否应严格使用同步处理,或者 Camel 允许使用异步处理(如果受支持)。 | false | 布尔值 |