3

CamelContextが停止したときに通知を受け取るにはどうすればよいですか?APIにはaddStartupListenerがありますが、コンテキストが停止したときと同様のものはありませんか?

4

2 に答える 2

3

この質問は Camel メーリング リスト http://camel.465427.n5.nabble.com/Notification-on-CamelContext-stop-tp5729300.htmlにも寄せられました。

いくつかの方法があります。1 つは Evgeniy Dorofeev がライフサイクル戦略で示したものです。 http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/spi/LifecycleStrategy.html

もう 1 つは、Event オブジェクトを使用し、ライフサイクル戦略よりも多くのイベントを持つイベント通知機能です。たとえば、次の例に示すように: 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

これは方法の1つです

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

Claus Ibsen の回答を参照してください。彼は Camel in Action http://www.manning.com/ibsen/の著者です。

于 2013-03-17T06:57:01.247 に答える