public @interface CompositeCommandConfig
修飾子とタイプ | 任意要素と説明 |
---|---|
CommandConfig[] |
command
複合するCommandの設定を指定します。
|
boolean |
rollbackWhenException
複合Commandより例外がスローされた場合、トランザクションをロールバックするか否かの設定です。
|
java.lang.String |
rule
複合Commandを利用する場合の処理ルールをGroovyScriptで設定します。
|
boolean |
throwExceptionIfSetRollbackOnly
トランザクションが本複合Command処理用に新規作成された際、
処理中にsetRoobackOnlyされた場合、
かつ明示的に例外がスローされなかった場合、
RollbackException をスローするか否かの設定です。 |
Propagation |
transactionPropagation
複合Commandを利用する場合の複合Command全体に対するトランザクションのPropagationの設定です。
|
java.lang.String |
value
複合Commandのインスタンスの初期化設定です。
|
public abstract CommandConfig[] command
public abstract java.lang.String value
cmd[0].propA = 10 cmd[1].propB = 'hoge'とした場合、 commandで定義されるCommandのindex=0のCommandのプロパティpropAに10、 index=1のCommandのプロパティpropBにhogeといったStringをセットします。
public abstract Propagation transactionPropagation
public abstract boolean rollbackWhenException
public abstract boolean throwExceptionIfSetRollbackOnly
RollbackException
をスローするか否かの設定です。
未指定(デフォルト)の場合はfalseです。public abstract java.lang.String rule
if (cmd[0].execute(request) == "SUCCESS") { return cmd[1].execute(request); } else { return cmd[2].execute(request); }commandで指定されたインスタンス配列がcmdの名前でバインドされています。 また、requestでRequestContextがバインドされています。