|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--com.objectwave.transactionalSupport.xa.XaSessionManager
Support using Sessions as a compliant XAResource. The resources it manages are the DomainObject instances. This class is in the early stage of development - Whats important is that this resource somehow get associated with a TransactionManager transaction. Since that can be application server specific, I'll leave this as is for now.
Example of how it may look.XaSessionManager manager = new XaSessionManager();
public void doSomethingNeedingManaged() {
TransactionManager tm = null;
try {
tm = (TransactionManager) new InitialContext().lookup("java:/TransactionManager");
Transaction tran = tm.getTransaction();
if( tran != null ) tran.enlistResource( manager );
}
catch(Exception e) {
MessageLog.debug( this, "Failed to locate transaction manager", e);
}
Field Summary | |
protected java.util.Hashtable |
table
|
protected int |
timeout
|
Fields inherited from interface javax.transaction.xa.XAResource |
TMENDRSCAN, TMFAIL, TMJOIN, TMNOFLAGS, TMONEPHASE, TMRESUME, TMSTARTRSCAN, TMSUCCESS, TMSUSPEND, XA_OK, XA_RDONLY |
Constructor Summary | |
XaSessionManager()
Constructor for the XaSession object |
Method Summary | |
protected void |
commit(Session ses)
Do the actual commit |
void |
commit(javax.transaction.xa.Xid xid,
boolean parm2)
|
void |
end(javax.transaction.xa.Xid xid,
int parm2)
|
protected Session |
findSession(javax.transaction.xa.Xid xid)
|
void |
forget(javax.transaction.xa.Xid xid)
|
protected java.lang.Object |
getKey(javax.transaction.xa.Xid xid)
|
int |
getTransactionTimeout()
Gets the TransactionTimeout attribute of the XaSession object |
boolean |
isSameRM(javax.transaction.xa.XAResource parm1)
Gets the SameRM attribute of the XaSession object |
int |
prepare(javax.transaction.xa.Xid xid)
|
javax.transaction.xa.Xid[] |
recover(int parm1)
|
void |
rollback(javax.transaction.xa.Xid xid)
|
boolean |
setTransactionTimeout(int parm1)
Sets the TransactionTimeout attribute of the XaSession object |
void |
start(javax.transaction.xa.Xid xid,
int parm2)
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
protected java.util.Hashtable table
protected int timeout
Constructor Detail |
public XaSessionManager()
Method Detail |
public boolean setTransactionTimeout(int parm1) throws javax.transaction.xa.XAException
setTransactionTimeout
in interface javax.transaction.xa.XAResource
parm1
- The new TransactionTimeout value
javax.transaction.xa.XAException
public int getTransactionTimeout() throws javax.transaction.xa.XAException
getTransactionTimeout
in interface javax.transaction.xa.XAResource
javax.transaction.xa.XAException
public boolean isSameRM(javax.transaction.xa.XAResource parm1) throws javax.transaction.xa.XAException
isSameRM
in interface javax.transaction.xa.XAResource
parm1
-
javax.transaction.xa.XAException
protected java.lang.Object getKey(javax.transaction.xa.Xid xid)
xid
-
protected void commit(Session ses) throws javax.transaction.xa.XAException
ses
-
javax.transaction.xa.XAException
public void commit(javax.transaction.xa.Xid xid, boolean parm2) throws javax.transaction.xa.XAException
commit
in interface javax.transaction.xa.XAResource
parm2
- xid
-
javax.transaction.xa.XAException
public void end(javax.transaction.xa.Xid xid, int parm2) throws javax.transaction.xa.XAException
end
in interface javax.transaction.xa.XAResource
parm2
- xid
-
javax.transaction.xa.XAException
public void forget(javax.transaction.xa.Xid xid) throws javax.transaction.xa.XAException
forget
in interface javax.transaction.xa.XAResource
xid
-
javax.transaction.xa.XAException
public int prepare(javax.transaction.xa.Xid xid) throws javax.transaction.xa.XAException
prepare
in interface javax.transaction.xa.XAResource
xid
-
javax.transaction.xa.XAException
public javax.transaction.xa.Xid[] recover(int parm1) throws javax.transaction.xa.XAException
recover
in interface javax.transaction.xa.XAResource
parm1
-
javax.transaction.xa.XAException
public void rollback(javax.transaction.xa.Xid xid) throws javax.transaction.xa.XAException
rollback
in interface javax.transaction.xa.XAResource
xid
-
javax.transaction.xa.XAException
public void start(javax.transaction.xa.Xid xid, int parm2) throws javax.transaction.xa.XAException
start
in interface javax.transaction.xa.XAResource
parm2
- xid
-
javax.transaction.xa.XAException
protected Session findSession(javax.transaction.xa.Xid xid)
xid
-
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |