3.9. タイマー

タイマーノードには、delay と period があります。delay は、ノードがアクティベートされてから初めてタイマーがトリガーされるまでの間、待機する時間を指定します。period は、後に続くトリガーのアクティベートとその次のアクティベートまでの時間を定義します。period が 0 の場合は繰り返しのないタイマーとなります。
delay と period の定義構文は以下の通りです。
[#d][#h][#m][#s][#[ms]]
この構文では、日、時間、分、秒、ミリ秒 (指定がない場合のデフォルト値) を指定できます。例えば、"1h" という式は、タイマーをトリガーするまで1時間待機します。
式に #{expr} を使用して動的にプロセス変数をもとに期間を取得するか、プロセス変数 (例: myVariable.getValue()) をもとにより複雑な式を取得します。
タイマーサービスは、正しいタイミングでタイマーがトリガーされるようにします。タイマーは、これ以上トリガーされないようにキャンセルすることも可能です。
タイマーイベントは、プロセスフローに追加することができます。アクティベートされるとタイマーを開始して、トリガーされると一度または繰り返しタイマーノードを継承するノードをアクティベートします。つまり、正の値の period を持つタイマーの外向き接続が複数回トリガーされることを意味します。タイマーノードをキャンセルすると、関連付けられたタイマーもキャンセルされ、それ以降トリガーが起こらないようにします。