如何使用Camel路由自定义Java侦听器onEvent

时间:2015-03-25 00:14:13

标签: apache-camel akka spring-integration gemfire spring-data-gemfire

我还没有找到任何帮助我了解我需要在这里做什么的例子,所以我会解释我的问题:

我有一个Java Bean,它为Pivotal的Gemfire产品实现了一个自定义监听器。它实现了一个名为CqListener的接口,它定义了一个方法如下:

public void onEvent(CQEvent evt){
   ...
}

基本上,当我们在Gemfire网格上执行连续查询(CQ)时,我们将此Bean注册为监听器,它将接收与我们的查询匹配的网格中的任何更改。

例如,执行像

这样的CQ
SELECT * FROM /table_name
只要' table_name'中有任何内容,

就会在CQEvent方法中为onEvent提供{{1}} table(在Gemfire中它被称为区域)更改(CRUD)

我现在要做的是将Camel连接起来,将这些基础CQ内容中的任何内容路由到自定义路由。无论如何,我可以告诉Camel说"嘿,无论何时打电话给onEvent,把它带到其他地方" ?

我想去的其他地方是Akka演员。已经存在一个包装akka和camel(http://doc.akka.io/docs/akka/snapshot/scala/camel.html)的项目,但是我无法弄清楚这个端点URI业务来获取入站CQ事件。

我知道我错过了关于Camel的概念性关键,所以非常感谢任何帮助。我已经设法使用jms端点来实现它,所以我得到它对于众所周知的协议的工作原理,但我只想弄清楚如何为自定义协议做到这一点,其中实现从我身上抽象出来(与CQListener的情况一样)

1 个答案:

答案 0 :(得分:1)

我在帖子中添加了“spring-integration”标签。来自Spring Integration团队的人可能会有更多关于此类问题的经验或想法。

此外,Spring Integration的GemFire Suppor文档以及一般的周边文档可能会为您提供其他想法或选项。