第60章 ワークアイテムハンドラープロジェクトのカスタマイズ
ワークアイテムハンドラープロジェクトのコードをカスタマイズできます。ワークアイテムハンドラーが必要とする Java メソッドは executeWorkItem と abortWorkItem の 2 つです。
表60.1 Java メソッドの説明
| Java メソッド | 説明 |
|---|---|
|
| ワークアイテムハンドラーの実行時にデフォルトで実行されます。 |
|
| ワークアイテムが中断すると実行します。 |
いずれのメソッドでも、WorkItem パラメーターには GUI または API 呼び出しでカスタムタスクに入力したパラメーターが含まれており、WorkItemManager パラメーターがカスタムタスクの状態を追跡します。
コード構造の例
public class MyWorkItemWorkItemHandler extends AbstractLogOrThrowWorkItemHandler {
public void executeWorkItem(WorkItem workItem, WorkItemManager manager) {
try {
RequiredParameterValidator.validate(this.getClass(), workItem);
// sample parameters
String sampleParam = (String) workItem.getParameter("SampleParam");
String sampleParamTwo = (String) workItem.getParameter("SampleParamTwo");
// complete workitem impl...
// return results
String sampleResult = "sample result";
Map<String, Object> results = new HashMap<String, Object>();
results.put("SampleResult", sampleResult);
manager.completeWorkItem(workItem.getId(), results);
} catch(Throwable cause) {
handleException(cause);
}
}
@Override
public void abortWorkItem(WorkItem workItem, WorkItemManager manager) {
// similar
}
}
表60.2 パラメーターの説明
| パラメーター | 説明 |
|---|---|
|
|
全パラメーターに required とマーク付けされていることを確認します。マーク付けされていない場合は、 |
|
|
|
|
| パラメーターの受信時に、カスタムの Java コードが実行されます。 |
|
| カスタムタスクに結果を渡します。この結果は、カスタムタスクのデータ出力エリアに配置されます。 |
|
|
ワークアイテムハンドラーを完了とマークします。 |
|
| カスタムの Java コードを中断します。ワークアイテムが中断されるように設計されていない場合は、空白のままにすることができます。 |
Red Hat Process Automation Manager には、サポートされるカスタムタスクの限定セットが含まれています。Red Hat Process Automation Manager に含まれていないカスタムタスクはサポートされません。