条件分岐機能は、ISIを流れるメッセージ内の値によって、後続の処理を変更するための機能です。
条件分岐機能を使用する場合、開始から終了に進む途中で、指定した条件に一致するかで複数の経路に分岐するシーケンスを定義します。ISIを流れるメッセージ内の値によって、条件に一致するか判定され、条件に一致した最初の経路に進みます。どの条件にも一致しない場合は、条件不成立時の経路に進みます。
条件には、ISIを流れる共通メッセージのペイロード、または共通メッセージのヘッダパラメタの値が指定できます。
条件の指定については、以下の特長があります。
ペイロードまたはヘッダパラメタの値のどの位置を判断に使うかを「ポジション」として指定します。
ペイロード
ペイロードは、FLAT形式、CSV形式、およびXML形式を指定できます。
FLAT形式の場合は、先頭からのオフセット、バイト数で値の位置を指定します。
CSV形式の場合は、行数、カラム数で値の位置を指定します。
XML形式の場合は、XPathで値の位置を指定します。
共通メッセージのヘッダパラメタの値
ヘッダパラメタの値の場合は、ヘッダパラメタキーを指定します。
ポジションと条件を指定することによって、どの経路に進むか判断する条件を指定します。
値の比較は、数値比較、文字列比較ができます。
数値比較の場合は、<、>、<=、>=、=、!=を指定します。
文字列比較の場合は、=、!=を指定します。
複数の式をAND, ORで組み合わせた条件式を使用できます。
以下の場合、指定した条件は不一致として扱います。また、ログの出力レベルに応じてシステムのログおよびトレースログに警告メッセージを出力します。
ポジションに指定したペイロードまたはヘッダパラメタの値が取得できなかった場合
数値比較時にポジションに指定したペイロードまたはヘッダパラメタの値が数値として扱えない場合