第30章 Simple 言語


概要

Simple 言語は、特にエクルチェンジオブジェクトのさまざまな部分にアクセスして操作することを目的とし、Apache Camel で開発された言語です。この言語は、初期に開発された時ほどシンプルではなく、現在では論理演算子と接続詞の包括的なセットが備えられています。

30.1. Java DSL

Java DSL での Simple 式

Java DSL には、ルートで simple() コマンドを使用するために、2 つのスタイルがあります。以下のように、simple() コマンドを引数としてプロセッサーに渡すこともできます。

from("seda:order")
  .filter(simple("${in.header.foo}"))
  .to("mock:fooOrders");

または、以下のように、プロセッサーのサブ句として simple() コマンドを実行することもできます。

from("seda:order")
  .filter()
  .simple("${in.header.foo}")
  .to("mock:fooOrders");

文字列への埋め込み

プレーンテキスト文字列内に Simple 式を埋め込む場合は、プレースホルダー構文 ${Expression} を使用する必要があります。たとえば、以下のように式 in.header.name を文字列に埋め込みます。

simple("Hello ${in.header.name}, how are you?")

開始トークンおよび終了トークンのカスタマイズ

Java から、SimpleLanguage オブジェクトの changeFunctionStartToken static メソッドと changeFunctionEndToken static メソッドを呼び出すことで、開始トークンおよび終了トークン (デフォルトでは、{}) をカスタマイズできます。

たとえば、Java では以下のように、開始トークンおよび終了トークンを [ および ] に変更することができます。

// Java
import org.apache.camel.language.simple.SimpleLanguage;
...
SimpleLanguage.changeFunctionStartToken("[");
SimpleLanguage.changeFunctionEndToken("]");
注記

開始トークンおよび終了トークンをカスタマイズすると、クラスパス上で同じ camel-core ライブラリーを共有するすべての Apache Camel アプリケーションに影響します。たとえば、OSGi サーバーでは多くのアプリケーションに影響する可能性がありますが、Web アプリケーション (WAR ファイル) では、Web アプリケーション自体にしか影響を与えません。

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

© 2024 Red Hat, Inc.