3

当 CamelContext 停止时,如何获得通知,API 有 addStartupListener 但上下文停止时没有类似的东西?

4

2 回答 2

3

Camel 邮件列表http://camel.465427.n5.nabble.com/Notification-on-CamelContext-stop-tp5729300.html上也提出了这个问题

有几种方法。正如 Evgeniy Dorofeev 所展示的生命周期战略。 http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/spi/LifecycleStrategy.html

另一个是事件通知器,它使用事件对象并且比生命周期策略拥有更多的事件。例如本例所示:http ://camel.apache.org/eventnotifier-to-log-details-about-all-sent-exchanges.html

如果您使用 Spring 或 Blueprint XML,那么您可以通过定义一个 bean 来配置它们,Camel 将按照此处记录的方式获取它:http: //camel.apache.org/advanced-configuration-of-camelcontext-using-spring.html

于 2013-03-17T08:05:53.680 回答
2

这是方法之一

    camelContext.addLifecycleStrategy(new LifecycleStrategySupport() {
        @Override
        public void onContextStop(CamelContext context) {
        }
    });

在克劳斯易卜生的回答中看到更多,他是骆驼行动的作者http://www.manning.com/ibsen/

于 2013-03-17T06:57:01.247 回答