27.6. サンプル


Kamelets は、標準の Camel コンポーネントであるかのように使用できます。たとえば、次のようにルートテンプレートを作成したとします。

routeTemplate("setMyBody")
    .templateParameter("bodyValue")
    .from("kamelet:source")
        .setBody().constant("{{bodyValue}}");
注記

Kamelet コンポーネントが具体化されたルートを呼び出し元プロセッサーに配線できるようにするには、ルートの入力エンドポイントと出力エンドポイントを識別できるようにする必要があります。これは、kamel:source を使用して入力エンドポイントをマークし、kamelet:sink を出力に使用することによって行われます。終点。

次に、以下に示すように、テンプレートをインスタンス化して呼び出すことができます。

from("direct:setMyBody")
    .to("kamelet:setMyBody?bodyValue=myKamelet");

舞台裏で、Kamelet コンポーネントは次のことを行います。

  1. 指定された templateId パスパラメーター (この場合は setBody) によって識別されるルートテンプレートからルートをインスタンス化します。
  2. これは direct コンポーネントのように機能し、現在のルートを具体化されたルートに接続します。

プログラムで行う必要がある場合は、次のようになります。

routeTemplate("setMyBody")
    .templateParameter("bodyValue")
    .from("direct:{{foo}}")
        .setBody().constant("{{bodyValue}}");

TemplatedRouteBuilder.builder(context, "setMyBody")
    .parameter("foo", "bar")
    .parameter("bodyValue", "myKamelet")
    .add();

from("direct:template")
    .to("direct:bar");
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.