6.3. ノード

プロセスグラフはノードと遷移によって構成されます。 各ノードは特定のタイプです。 ノードタイプは、ランタイムにノードへ実行が入場した時に何をするかを決定します。 ビジネスプロセスマネージャーは使用するノードタイプのセットを提供します。 この代わりに、 特別なノード動作を実装するためカスタムコードを書くこともできます。

6.3.1. ノードの責任

各ノードが担当するのは主に2つあり、1 つ目は、 ノードは通常ノードの関数に関連するプレーン Java コードを実行できること、2 つ目はプロセス実行を渡すことです。
ノードがプロセス実行を渡そうとすると、 次のようなオプションを選択しなければならないことがあります。 ノードは最も適切なコースに従います。
  1. 実行を伝播できません (ノードは wait state として挙動します)。
  2. ノードの leaving transitions の 1 つで実行を伝播できます (既にノードに入場したトークンが、 API 呼び出し executionContext.leaveNode(String) により、 executionContext.leaveNode(String) の 1 つで渡されることを意味します)。 このノードは、 カスタムプログラミングロジックの一部を実行し、 待機背図にプロセス実行を自動的に継続するため、 ある意味自動的に動作するようになります。
  3. ノードは、 新しい実行パスを表す新しいトークンの作成を決定できます。 新しい各トークンはノードの leaving transitions 上で開始されます。 このような動作のよい例が fork node になります。
  4. 実行パスを終了できます。 これは、 トークンが終了したことを意味します。
  5. プロセスインスタンスはランタイム構造全体を変更できます。 ランタイム構造は、 各トークンが実行パスを表すトークンのツリーを含んだプロセスインスタンスです。 ノードは、 トークンの作成や終了を行い、 各トークンをグラフのノードに置いたり、遷 移でトークンを開始することができます。
ビジネスプロセスマネージャーには事前実装のノードタイプのセットが含まれています。 各ノードタイプは特定の設定と動作を持っていますが、 独自のノード動作を書いて、 プロセスで使用することもできます。