Red Hat Training

A Red Hat training course is available for Red Hat Fuse

198.3. Eclipse Kura コンポーネント

Camel 2.15 から利用可能

このドキュメントページでは、Camel と Eclipse Kura M2M ゲートウェイとの統合オプションについて説明します。Camel ルートを Eclipse Kura にデプロイする一般的な理由は、エンタープライズ統合パターンと Camel コンポーネントをメッセージング M2M ゲートウェイに提供することです。たとえば、Kura を Raspberry PI にインストールし、Kura サービスを使用してその Raspberry PI にアタッチされたセンサーから温度を読み、最後に Camel EIP やコンポーネントを使用して現在の温度値をデータセンターサービスに転送するとします。

198.3.1. KuraRouter activator

Eclipse Kura にデプロイされたバンドルは通常、bundle activators として開発 されます。そのため、Apache Camel ルートを Kura にデプロイする最も簡単な方法は、org.apache.camel.kura.KuraRouter クラスを拡張するクラスを含む OSGi バンドルを作成することです。

public class MyKuraRouter extends KuraRouter {

  @Override
  public void configure() throws Exception {
    from("timer:trigger").
      to("netty-http:http://app.mydatacenter.com/api");
  }

}

KuraRouter は org.osgi.framework.BundleActivator インターフェースを実装するため、 Kura バンドルコンポーネントクラスの作成 時に 開始 および 停止 ライフサイクルメソッドを登録する必要があります。

Kura ルーターは、独自の OSGi 対応の CamelContext を起動します。つまり、KuraRouter を拡張するすべてのクラスに対して専用の CamelContext インスタンスがあります。OSGi バンドルごとに KuraRouter を 1 台デプロイすることを推奨します。