[jboss-svn-commits] JBL Code SVN: r9089 - labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/internal/jta/transaction/arjunacore/jca.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Mon Jan 29 17:17:28 EST 2007
Author: mark.little at jboss.com
Date: 2007-01-29 17:17:27 -0500 (Mon, 29 Jan 2007)
New Revision: 9089
Modified:
labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/internal/jta/transaction/arjunacore/jca/XATerminatorImple.java
Log:
Added recovery support.
Modified: labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/internal/jta/transaction/arjunacore/jca/XATerminatorImple.java
===================================================================
--- labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/internal/jta/transaction/arjunacore/jca/XATerminatorImple.java 2007-01-29 22:07:34 UTC (rev 9088)
+++ labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/internal/jta/transaction/arjunacore/jca/XATerminatorImple.java 2007-01-29 22:17:27 UTC (rev 9089)
@@ -210,9 +210,20 @@
switch (flag)
{
case XAResource.TMSTARTRSCAN: // check the object store
+ if (_recoveryStarted)
+ throw new XAException(XAException.XAER_PROTO);
+ else
+ _recoveryStarted = true;
break;
case XAResource.TMENDRSCAN: // null op for us
+ if (_recoveryStarted)
+ _recoveryStarted = false;
+ else
+ throw new XAException(XAException.XAER_PROTO);
return null;
+ case XAResource.TMNOFLAGS:
+ if (_recoveryStarted)
+ break;
default:
throw new XAException(XAException.XAER_PROTO);
}
@@ -271,6 +282,7 @@
com.arjuna.ats.internal.jta.transaction.arjunacore.subordinate.jca.TransactionImple tx = (com.arjuna.ats.internal.jta.transaction.arjunacore.subordinate.jca.TransactionImple) values.pop();
indoubt[index] = tx.baseXid();
+ index++;
}
}
}
@@ -325,4 +337,7 @@
throw new XAException(XAException.XAER_RMERR);
}
}
+
+ private boolean _recoveryStarted = false;
+
}
More information about the jboss-svn-commits
mailing list