org.seasar.extension.tx
クラス RequiredInterceptor

java.lang.Object
  拡張org.seasar.extension.tx.AbstractTxInterceptor
      拡張org.seasar.extension.tx.RequiredInterceptor
すべての実装インタフェース:
Advice, Interceptor, MethodInterceptor

public class RequiredInterceptor
extends AbstractTxInterceptor

トランザクションを要求するメソッドのためのインターセプタです。

このインターセプタが適用されたメソッドが呼び出された際にトランザクションが開始されていない場合は、 トランザクションが開始されます。 すでにトランザクションが開始されていた場合は、 そのトランザクションを引き継ぎます。

トランザクションを開始した場合でも引き継いだ場合でも、このインターセプタが適用されたメソッドが例外をスローした場合は、 例外の種類に応じてトランザクションがロールバックされるようにマークします。デフォルトでは、全ての例外に対してロールバックされるようにマークします。 この設定は AbstractTxInterceptor.addCommitRule(Class) および AbstractTxInterceptor.addRollbackRule(Class) によって変更することができます。

トランザクションを開始した場合、 このインターセプタが適用されたメソッドが終了 (正常終了した場合および例外をスローした場合の両方) すると、開始したトランザクションを完了 (コミットまたはロールバック) します。 トランザクションがロールバックするようにマークされていれば、トランザクションをロールバックします。 そうでなければ、トランザクションをコミットします。

作成者:
higa

フィールドの概要
 
クラス org.seasar.extension.tx.AbstractTxInterceptor から継承したフィールド
transactionManagerAdapter, txRules
 
コンストラクタの概要
RequiredInterceptor()
          インスタンスを構築します。
 
メソッドの概要
 java.lang.Object invoke(MethodInvocation invocation)
           
 
クラス org.seasar.extension.tx.AbstractTxInterceptor から継承したメソッド
addCommitRule, addRollbackRule, setTransactionControl
 
クラス java.lang.Object から継承したメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

RequiredInterceptor

public RequiredInterceptor()
インスタンスを構築します。

メソッドの詳細

invoke

public java.lang.Object invoke(MethodInvocation invocation)
                        throws java.lang.Throwable
例外:
java.lang.Throwable


Copyright © 2004-2014 The Seasar Foundation. All Rights Reserved.