|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.objectweb.jotm.TransactionImpl
public class TransactionImpl
TransactionImpl is the implementation of the Transaction interface, defined in JTA specifications. This object is intended to be used by the EJBServer for transaction management. It is used indirectly by the UserTransaction implementation too, i.e. the Current object. The goal is to use the JTA interface to hide the JTM interface to the caller (EJBServer, Bean or Client).
| Constructor Summary | |
|---|---|
TransactionImpl(org.objectweb.jotm.TransactionContext pctx)
New Transaction for this thread (setPropagationContext) |
|
TransactionImpl(org.objectweb.jotm.Xid xid,
int timeout)
New transaction (begin). |
|
| Method Summary | |
|---|---|
void |
cleanup()
|
void |
commit()
Complete the transaction represented by this Transaction object The calling thread is not required to have the same transaction associated with the thread. |
boolean |
delistResource(XAResource xares,
int flag)
Delist the resource specified from the current transaction associated with the calling thread. |
void |
doAttach(int flag)
enlist/clear all suspended resource |
void |
doDetach(int flag)
delist all enlisted resources and move to suspended |
boolean |
enlistResource(XAResource xares)
Enlist the resource specified with the current transaction context of the calling thread |
boolean |
equals(Object obj2)
return true if objects are identical |
List |
getEnlistedXAResource()
get a copy of the list of currently enlisted resource |
org.objectweb.jotm.TransactionContext |
getPropagationContext(boolean hold)
Return associated PropagationContext Used for implicit Context propagation. |
int |
getStatus()
Obtain the status of the transaction associated with the current thread. |
Date |
getTxDate()
get the date time stamp for the transaction |
Object |
getUserResource(Object key)
Get User Resource |
org.objectweb.jotm.Xid |
getXid()
Get the Xid of the transaction |
int |
hashCode()
return a hashcode value for this object |
int |
prepare()
Prepare the transaction represented by this Transaction object. |
void |
putUserResource(Object key,
Object value)
Save User Resource |
void |
registerInterposedSynchronization(Synchronization sync)
Register InterposedSynchronization |
void |
registerSynchronization(Synchronization sync)
Register a synchronization object for the transaction currently associated with the calling thread. |
void |
rollback()
Rollback the transaction represented by this Transaction object. |
void |
setRollbackOnly()
Modify the transaction associated with the current thread such that the only possible outcome of the transaction is to roll back the transaction. |
void |
setTimer(org.objectweb.jotm.TimerEvent timer)
set a timer for the transaction |
void |
setTxDate(Date date)
set the date time stamp for the transaction |
void |
timeoutExpired(Object arg)
timeout for that transaction has expired |
boolean |
toRemove()
|
String |
toString()
string form |
void |
unsetTimer()
unset the timer |
void |
updatePropagationContext(org.objectweb.jotm.TransactionContext pctx)
update the propagation context We should be inside the reply of a request involved in a tx here! |
| Methods inherited from class java.lang.Object |
|---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
| Constructor Detail |
|---|
public TransactionImpl(org.objectweb.jotm.Xid xid,
int timeout)
throws SystemException
xid - transaction Xidtimeout - The value of the timeout in seconds.
SystemException - could not build Transaction Contextpublic TransactionImpl(org.objectweb.jotm.TransactionContext pctx)
pctx - propagation context| Method Detail |
|---|
public void putUserResource(Object key,
Object value)
key - objectvalue - objectpublic Object getUserResource(Object key)
key - object
public void registerInterposedSynchronization(Synchronization sync)
throws IllegalStateException
sync - synchronization
IllegalStateException - could not register synchronization
public void commit()
throws RollbackException,
HeuristicMixedException,
HeuristicRollbackException,
SecurityException,
SystemException
commit in interface TransactionRollbackException - Thrown to indicate that the transaction has been rolled back rather than committed.
HeuristicMixedException - Thrown to indicate that a heuristic decision was made and that some relevant updates have been
committed while others have been rolled back.
HeuristicRollbackException - Thrown to indicate that a heuristic decision was made and that some relevant updates have been
rolled back.
SecurityException - Thrown to indicate that the thread is not allowed to commit the transaction.
IllegalStateException - Thrown if the current thread is not associated with a transaction.
SystemException - Thrown if the transaction manager encounters an unexpected error condition
public boolean delistResource(XAResource xares,
int flag)
throws IllegalStateException,
SystemException
delistResource in interface Transactionxares - The XAResource object representing the resource to delistflag - One of the values of TMSUCCESS, TMSUSPEND, or TMFAIL.
IllegalStateException - Thrown if the transaction in the target object is inactive.
SystemException - Thrown if the transaction manager encounters an unexpected error condition
public boolean enlistResource(XAResource xares)
throws RollbackException,
IllegalStateException,
SystemException
enlistResource in interface Transactionxares - The XAResource object representing the resource to enlist
RollbackException - Thrown to indicate that the transaction has been marked for rollback only.
IllegalStateException - Thrown if the transaction in the target object is in prepared state or the transaction is
inactive.
SystemException - Thrown if the transaction manager encounters an unexpected error condition
public void doDetach(int flag)
throws SystemException
SystemException
public void doAttach(int flag)
throws SystemException,
RollbackException
SystemException
RollbackExceptionpublic List getEnlistedXAResource()
public int getStatus()
throws SystemException
getStatus in interface TransactionSystemException - Thrown if the transaction manager encounters an unexpected error condition
public void registerSynchronization(Synchronization sync)
throws RollbackException,
IllegalStateException,
SystemException
registerSynchronization in interface Transactionsync - The javax.transaction.Synchronization object for the transaction associated with the target object
RollbackException - Thrown to indicate that the transaction has been marked for rollback only.
IllegalStateException - Thrown if the transaction in the target object is in prepared state or the transaction is
inactive.
SystemException - Thrown if the transaction manager encounters an unexpected error condition
public void rollback()
throws IllegalStateException,
SystemException
rollback in interface TransactionIllegalStateException - Thrown if the transaction in the target object is in prepared state or the transaction is
inactive.
SystemException - Thrown if the transaction manager encounters an unexpected error condition
public int prepare()
throws IllegalStateException,
SystemException
IllegalStateException - Thrown if the transaction in the target object is in prepared state or the transaction is
inactive.
SystemException - Thrown if the transaction manager encounters an unexpected error condition
public void setRollbackOnly()
throws IllegalStateException,
SystemException
setRollbackOnly in interface TransactionIllegalStateException - Thrown if the current thread is not associated with any transaction.
SystemException - Thrown if the transaction manager encounters an unexpected error conditionpublic void timeoutExpired(Object arg)
timeoutExpired in interface org.objectweb.jotm.TimerEventListenerpublic boolean equals(Object obj2)
equals in class Objectpublic int hashCode()
hashCode in class Objectpublic String toString()
toString in class Objectpublic org.objectweb.jotm.TransactionContext getPropagationContext(boolean hold)
hold - true if must increment the count to hold the object (not used!)
public void setTimer(org.objectweb.jotm.TimerEvent timer)
timer - the timer event to setpublic void unsetTimer()
public void setTxDate(Date date)
date - the Date to set for the transactionpublic Date getTxDate()
public void updatePropagationContext(org.objectweb.jotm.TransactionContext pctx)
pctx - propagation contextpublic org.objectweb.jotm.Xid getXid()
public boolean toRemove()
public void cleanup()
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||