アクション・ノード (場合によっては単にアクション と呼ばれます) は、コラボレーションにおけるステップを示します。
アクション・ノードは、コラボレーション・ロジックの構築ブロックです。コラボレーション・ロジックをアクション・ノードに分割するかどうかは、完全にユーザーの自由です。多数の行から成る複雑なコードを単一アクションで記述することも、ロジックを多数の個別アクションに分割することもできます。コラボレーション・ロジックをアクション・ノードに分割することは、プログラム・コードの開発に似ています。
サブルーチンあるいはメソッド呼び出しの集合を呼び出す短いメインルーチンを使用してプログラムを作成し、プログラムの機能を実行することができます。また、すべてのプログラム・ロジックをインラインに含む長いメインルーチンを作成することもできます。
アクション・ノードをアクティビティー・ダイアグラムに追加する手順は、以下のとおりです。
アクティビティー・ダイアグラムにアクション・ノードが表示されたら、「Action Properties」ダイアログ・ボックスを使用して以下のいずれかのノード用プロパティーを定義します。
以下のいずれかの方法で「Action Properties」ダイアログ・ボックスを開きます。
「Action Properties」ダイアログの上部には、アクション・ノードの名前が表示されます。
この名前のフォーマットは、以下のとおりです。
Action_UID
ここで、UID はアクション・ノードの固有 ID です。図 33 に「Action Properties」ダイアログ・ボックスを示します。
図 33. 「Action Properties」ダイアログ
アクション・ノードにはアクティビティー定義が含まれています。 アクティビティー定義 (コード・フラグメント とも呼ばれる) は、コラボレーション API への呼び出しまたはその他の Java コードで構成されており、次のような操作を含めることができます。
アクティビティー定義には、任意の Java プログラム言語構造を含めることができます。
アクティビティー定義をアクション・ノードに追加するには、次の 2 つの方法があります。
「Action Properties」ダイアログ・ボックスの「コード・フラグメント」ウィンドウに Java コードを直接追加する手順は、以下のとおりです。
Activity Editor を使ってアクティビティー定義を追加する手順は、以下のとおりです。
アクティビティー定義では Java 演算子を使用できます。具体的には、算術演算子のほかに、関係演算子や条件演算子を使用できます。
Java クラスはすべて基本 Object クラスから継承されます。このため、各クラスには使用可能な equals() メソッドが含まれます。このシグニチャーは次のとおりです。
public boolean equals(Object obj);
equals() メソッドは、値の等価性に関するメソッドです。
このメソッドは、このメソッドを呼び出すオブジェクトと、obj によって参照されるオブジェクトを比較して等価性を調べます。値が同じであれば true を戻し、等しくなければ false を戻します。これは、等価演算子 == および != とは異なります。これら 2 つの等価演算子は、2 つの参照がオブジェクトの値に関係なく同じオブジェクトを参照しているかどうかを判断します。この相違は重要です。
表 33 に、使用可能な等価演算子をまとめてあります。各等価演算子または関係演算子は、boolean 値の結果を生成します。
関係演算子 | 意味 |
---|---|
> | より大きい |
>= | より大きいか等しい |
< | より小さい |
<= | より小さいか等しい |
== | 等しい |
!= | 等しくない |
! | 単項演算子。boolean 値を反転します。 |
boolean 式の結果は、条件付き AND (&&) および条件付き OR (||) シンボルと結合できます。
表 34 に、算術演算子 (増分演算子と減分演算子を含む) についてまとめてあります。
算術演算子 | 意味 |
---|---|
+ | 加算 |
- | 減算 |
* | 乗算 |
/ | 割り算 |
% | 余り |
- | 否定、または数値の符号を反転する単項演算子 |
++ | 増分演算子 |
-- | 減分演算子 |
= |
代入演算子
|
コラボレーション・テンプレートのアクティビティー定義で Web サービスを使用する場合は、まず System Manager の ICL (Integration Component Library) プロジェクトから Web サービスをエクスポートする必要があります。Web サービスの各メソッドは、機能ブロックとして Activity Editor にエクスポートされ、そこでアクティビティー定義に配置することができます。詳細については、Web サービス機能ブロックを参照してください。
アクション・ノードのロジックのコーディングについては、次の表を参照してください。
追加リソース | ロケーション |
---|---|
Activity Editor の詳細記述 (機能ブロックの使用例を含む) | Activity Editor の使用 |
コード・フラグメントの例 | コーディングのヒントと例 |
個々の機能ブロックの参照ページ | "ビジネス・オブジェクトの機能ブロック"から"ユーティリティーの機能ブロック" |
コラボレーション API の個々のメソッドの参照ページ | "BaseCollaboration クラス"から"StateManagement クラス" |