30.6. 変数の参照

変数の一覧表

表30.1「Simple 言語の変数」 は、Simple 言語でサポートされているすべての変数を表示します。

表30.1 Simple 言語の変数

変数説明

camelContext

オブジェクト

Camel コンテキストOGNL 式をサポートします。

camelId

String

Camel コンテキストの ID 値。

exchangeId

String

エクスチェンジの ID 値。

id

String

In メッセージ ID の値。

body

オブジェクト

In メッセージ ボディーOGNL 式をサポートします。

in.body

オブジェクト

In メッセージ ボディーOGNL 式をサポートします。

out.body

オブジェクト

Out メッセージ ボディー

bodyAs(Type)

In メッセージボディーを指定された型に変換します。すべての型 (Type) は、byte[]StringInteger、および Long を除き、完全修飾 Java 名を使用して指定する必要があります 。変換された本文は null にすることができます。

mandatoryBodyAs(Type)

In メッセージボディーを指定された型に変換します。すべての型 (Type) は、byte[]StringInteger、および Long を除き、完全修飾 Java 名を使用して指定する必要があります 。変換されたボディーは null 以外であることが想定されています。

header.HeaderName

オブジェクト

In メッセージの HeaderName ヘッダー。OGNL 式をサポートします。

header[HeaderName]

オブジェクト

In メッセージの HeaderName ヘッダー (代替構文)。

headers.HeaderName

オブジェクト

In メッセージの HeaderName ヘッダー。

headers[HeaderName]

オブジェクト

In メッセージの HeaderName ヘッダー (代替構文)。

in.header.HeaderName

オブジェクト

In メッセージの HeaderName ヘッダー。OGNL 式をサポートします。

in.header[HeaderName]

オブジェクト

In メッセージの HeaderName ヘッダー (代替構文)。

in.headers.HeaderName

オブジェクト

In メッセージの HeaderName ヘッダー。OGNL 式をサポートします。

in.headers[HeaderName]

オブジェクト

In メッセージの HeaderName ヘッダー (代替構文)。

out.header.HeaderName

オブジェクト

Out メッセージの HeaderName ヘッダー。

out.header[HeaderName]

オブジェクト

Out メッセージの HeaderName ヘッダー (代替構文)。

out.headers.HeaderName

オブジェクト

Out メッセージの HeaderName ヘッダー。

out.headers[HeaderName]

オブジェクト

Out メッセージの HeaderName ヘッダー (代替構文)。

headerAs(Key,Type)

指定された型に変換された Key ヘッダー。すべての型 (Type) は、byte[]StringInteger、および Long を除き、完全修飾 Java 名を使用して指定する必要があります 。変換された値は null にすることができます。

ヘッダー

マップ

In ヘッダーのすべて (java.util.Map 型)。

in.headers

マップ

In ヘッダーのすべて (java.util.Map 型)。

exchangeProperty.PropertyName

オブジェクト

エクスチェンジの PropertyName プロパティー。

exchangeProperty[PropertyName]

オブジェクト

エクスチェンジの PropertyName プロパティー (代替構文 )。

exchangeProperty.PropertyName.OGNL

オブジェクト

エクスチェンジの PropertyName プロパティーを指定し、Camel OGNL 式を使用してその値を呼び出します。

sys.SysPropertyName

String

SysPropertyName Java システム プロパティー。

sysenv.SysEnvVar

String

SysEnvVar システム環境変数。

exception

String

Exchange.getException() からの例外オブジェクトか、この値が null の場合は、Exchange.EXCEPTION_CAUGHT プロパティーでキャッチされた例外。それ以外の場合は null になります。OGNL 式をサポートします。

exception.message

String

例外がエクスチェンジに設定されている場合は、Exception.getMessage() の値を返します。そうでない場合は null を返します。

exception.stacktrace

String

例外がエクスチェンジに設定されている場合は、Exception.getStackTrace() の値を返します。そうでない場合は null を返します。注記: Simple 言語は、まず Exchange.getException() から例外を取得しようとします。このプロパティーが設定されていない場合、Exchange.getProperty(Exchange.CAUGHT_EXCEPTION) の呼び出しによって、キャッチされた例外をチェックします。

date:command:pattern

String

java.text.SimpleDateFormat パターンを使用してフォーマットされた日付。以下のコマンドがサポートされます: 現在の日時の場合は nowheader.HeaderName または in.header.HeaderName を使用し、In メッセージの HeaderName ヘッダーで、java.util.Date オブジェクトを使います。Out メッセージの HeaderName ヘッダーで、java.util.Date オブジェクトを使うための out.header.HeaderName

bean:beanID.Method

オブジェクト

参照される Bean のメソッドを呼び出し、メソッド呼び出しの結果を返します。メソッド名を指定するには、beanID.Method 構文を使用するか、beanID?method=methodName 構文を使用できます。

ref:beanID

オブジェクト

レジストリーで ID (beanID) を使い Bean を検索し、bean 自体への参照を返します。たとえば Splitter EIP を使用している場合は、この変数を使用して、分割アルゴリズムを実装する Bean を参照できます。

properties:Key

String

Key プロパティープレースホルダーの値。

properties:Location:Key

String

プロパティーファイルの場所が Location によって提供される Key プロパティープレースホルダーの値。

threadName

String

現在のスレッドの名前。

routeId

String

Exchange がルーティングされている、現在のルートの ID を返します。

type:Name[.Field]

オブジェクト

型またはフィールドを完全修飾名 (FQN) で参照します。フィールドを参照するには、.Field を追加します。たとえば、type:org.apache.camel.Exchange.FILE_NAME として、Exchange クラスの FILE_NAME 定数フィールドを参照できます。

collate(group)

リスト

Camel 2.17 から、collate 関数はメッセージボディーをイテレートし、データを特定のサイズのサブリストにグループ化するようになりました。Splitter EIP を使用して、メッセージボディーを分割してグループ化したり、サブメッセージを N 個のサブリストのグループにまとめたりすることができます。

skip(number)

Iterator

skip 関数はメッセージのボディーをイテレートし、最初の項目数をスキップします。Splitter EIP と併用することで、メッセージボディーを分割し、最初の N 項目数をスキップすることができます。