134.4. Map cache consumer - from("hazelcast-map:foo")


Hazelcast 在其数据网格上提供事件监听程序。如果要操作缓存,如果要通知缓存,您可以使用映射使用者。共有 4 个事件: 放置更新删除envict。事件类型将存储在"hazelcast.listener.action" header 变量中。映射使用者在这些变量中提供一些额外信息:

响应消息中的标头变量:

Name类型描述

CamelHazelcastListenerTime

Long

millis 事件的时间

CamelHazelcastListenerType

字符串

映射消费者设置这里"cachelistener"

CamelHazelcastListenerAction

字符串

事件类型 - 此处 添加了updateenvicted 并删除。

CamelHazelcastObjectId

字符串

对象的 oid

CamelHazelcastCacheName

字符串

缓存的名称 - 例如 "foo"

CamelHazelcastCacheType

字符串

缓存的类型 - 此处映射

对象值将存储在 消息正文 中的放置和更新 操作中。

例如:

fromF("hazelcast-%sfoo", HazelcastConstants.MAP_PREFIX)
.log("object...")
.choice()
    .when(header(HazelcastConstants.LISTENER_ACTION).isEqualTo(HazelcastConstants.ADDED))
         .log("...added")
         .to("mock:added")
    .when(header(HazelcastConstants.LISTENER_ACTION).isEqualTo(HazelcastConstants.ENVICTED))
         .log("...envicted")
         .to("mock:envicted")
    .when(header(HazelcastConstants.LISTENER_ACTION).isEqualTo(HazelcastConstants.UPDATED))
         .log("...updated")
         .to("mock:updated")
    .when(header(HazelcastConstants.LISTENER_ACTION).isEqualTo(HazelcastConstants.REMOVED))
         .log("...removed")
         .to("mock:removed")
    .otherwise()
         .log("fail!");
Copy to Clipboard
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat