org.ehcache.transactions.xa
Class EhcacheXAResource<K,V>

java.lang.Object
  extended by org.ehcache.transactions.xa.EhcacheXAResource<K,V>
All Implemented Interfaces:
javax.transaction.xa.XAResource

public class EhcacheXAResource<K,V>
extends java.lang.Object
implements javax.transaction.xa.XAResource

The Ehcache XAResource implementation.


Field Summary
 
Fields inherited from interface javax.transaction.xa.XAResource
TMENDRSCAN, TMFAIL, TMJOIN, TMNOFLAGS, TMONEPHASE, TMRESUME, TMSTARTRSCAN, TMSUCCESS, TMSUSPEND, XA_OK, XA_RDONLY
 
Constructor Summary
EhcacheXAResource(Store<K,SoftLock<V>> underlyingStore, Journal<K> journal, XATransactionContextFactory<K,V> transactionContextFactory)
           
 
Method Summary
 void commit(javax.transaction.xa.Xid xid, boolean onePhase)
           
 void end(javax.transaction.xa.Xid xid, int flag)
           
 void forget(javax.transaction.xa.Xid xid)
           
 XATransactionContext<K,V> getCurrentContext()
           
 int getTransactionTimeout()
           
 boolean isSameRM(javax.transaction.xa.XAResource xaResource)
           
 int prepare(javax.transaction.xa.Xid xid)
           
 javax.transaction.xa.Xid[] recover(int flags)
           
 void rollback(javax.transaction.xa.Xid xid)
           
 boolean setTransactionTimeout(int seconds)
           
 void start(javax.transaction.xa.Xid xid, int flag)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

EhcacheXAResource

public EhcacheXAResource(Store<K,SoftLock<V>> underlyingStore,
                         Journal<K> journal,
                         XATransactionContextFactory<K,V> transactionContextFactory)
Method Detail

commit

public void commit(javax.transaction.xa.Xid xid,
                   boolean onePhase)
            throws javax.transaction.xa.XAException
Specified by:
commit in interface javax.transaction.xa.XAResource
Throws:
javax.transaction.xa.XAException

forget

public void forget(javax.transaction.xa.Xid xid)
            throws javax.transaction.xa.XAException
Specified by:
forget in interface javax.transaction.xa.XAResource
Throws:
javax.transaction.xa.XAException

getTransactionTimeout

public int getTransactionTimeout()
                          throws javax.transaction.xa.XAException
Specified by:
getTransactionTimeout in interface javax.transaction.xa.XAResource
Throws:
javax.transaction.xa.XAException

isSameRM

public boolean isSameRM(javax.transaction.xa.XAResource xaResource)
                 throws javax.transaction.xa.XAException
Specified by:
isSameRM in interface javax.transaction.xa.XAResource
Throws:
javax.transaction.xa.XAException

prepare

public int prepare(javax.transaction.xa.Xid xid)
            throws javax.transaction.xa.XAException
Specified by:
prepare in interface javax.transaction.xa.XAResource
Throws:
javax.transaction.xa.XAException

recover

public javax.transaction.xa.Xid[] recover(int flags)
                                   throws javax.transaction.xa.XAException
Specified by:
recover in interface javax.transaction.xa.XAResource
Throws:
javax.transaction.xa.XAException

rollback

public void rollback(javax.transaction.xa.Xid xid)
              throws javax.transaction.xa.XAException
Specified by:
rollback in interface javax.transaction.xa.XAResource
Throws:
javax.transaction.xa.XAException

setTransactionTimeout

public boolean setTransactionTimeout(int seconds)
                              throws javax.transaction.xa.XAException
Specified by:
setTransactionTimeout in interface javax.transaction.xa.XAResource
Throws:
javax.transaction.xa.XAException

start

public void start(javax.transaction.xa.Xid xid,
                  int flag)
           throws javax.transaction.xa.XAException
Specified by:
start in interface javax.transaction.xa.XAResource
Throws:
javax.transaction.xa.XAException

end

public void end(javax.transaction.xa.Xid xid,
                int flag)
         throws javax.transaction.xa.XAException
Specified by:
end in interface javax.transaction.xa.XAResource
Throws:
javax.transaction.xa.XAException

getCurrentContext

public XATransactionContext<K,V> getCurrentContext()
                                            throws CacheAccessException
Throws:
CacheAccessException