[jboss-svn-commits] JBL Code SVN: r25640 - in labs/jbosstm/trunk/ArjunaCore/arjuna: classes/com/arjuna/ats/arjuna/state and 2 other directories.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Fri Mar 13 12:03:43 EDT 2009


Author: mark.little at jboss.com
Date: 2009-03-13 12:03:43 -0400 (Fri, 13 Mar 2009)
New Revision: 25640

Added:
   labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/common/PersistenceUnitTest.java
Modified:
   labs/jbosstm/trunk/ArjunaCore/arjuna/build.xml
   labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/state/InputBuffer.java
   labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/state/OutputBuffer.java
   labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/resources/BasicObject.java
Log:
https://jira.jboss.org/jira/browse/JBTM-513

Modified: labs/jbosstm/trunk/ArjunaCore/arjuna/build.xml
===================================================================
--- labs/jbosstm/trunk/ArjunaCore/arjuna/build.xml	2009-03-13 15:47:51 UTC (rev 25639)
+++ labs/jbosstm/trunk/ArjunaCore/arjuna/build.xml	2009-03-13 16:03:43 UTC (rev 25640)
@@ -461,6 +461,10 @@
         	        	                todir="${com.hp.mwlabs.ts.arjuna.reports.dest}">
 				<fileset dir="${com.hp.mwlabs.ts.arjuna.tests.src}" includes="**/TxControlUnitTest.java"/>
         	</batchtest>
+        	<batchtest haltonerror="yes" haltonfailure="yes" fork="yes"
+        	        	        	                todir="${com.hp.mwlabs.ts.arjuna.reports.dest}">
+        					<fileset dir="${com.hp.mwlabs.ts.arjuna.tests.src}" includes="**/PersistenceUnitTest.java"/>
+        	</batchtest>
         </junit>
     </target>
 

Modified: labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/state/InputBuffer.java
===================================================================
--- labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/state/InputBuffer.java	2009-03-13 15:47:51 UTC (rev 25639)
+++ labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/state/InputBuffer.java	2009-03-13 16:03:43 UTC (rev 25640)
@@ -222,7 +222,6 @@
 	if (!_valid)
 	    throw new IOException(tsLogger.log_mesg.getString("com.arjuna.ats.arjuna.state.InputBuffer_2"));
 
-	int index = unpackInt();
 	int size = unpackInt();
 	byte b[] = new byte[size];
 

Modified: labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/state/OutputBuffer.java
===================================================================
--- labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/state/OutputBuffer.java	2009-03-13 15:47:51 UTC (rev 25639)
+++ labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/state/OutputBuffer.java	2009-03-13 16:03:43 UTC (rev 25640)
@@ -232,9 +232,6 @@
 	if (!_valid)
 	    throw new IOException(tsLogger.log_mesg.getString("com.arjuna.ats.arjuna.state.OutputBuffer_2"));
 
-	int index = -1;
-	
-	packInt(index);
 	packInt(b.length);
 
 	if (b.length > 0)

Added: labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/common/PersistenceUnitTest.java
===================================================================
--- labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/common/PersistenceUnitTest.java	                        (rev 0)
+++ labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/common/PersistenceUnitTest.java	2009-03-13 16:03:43 UTC (rev 25640)
@@ -0,0 +1,57 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2007, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA  02110-1301, USA.
+ *
+ * (C) 2007,
+ * @author JBoss, a division of Red Hat.
+ */
+package com.hp.mwtests.ts.arjuna.common;
+
+import junit.framework.TestCase;
+import junit.framework.Test;
+import junit.framework.TestSuite;
+
+import com.arjuna.ats.arjuna.coordinator.TransactionReaper;
+import com.arjuna.ats.arjuna.coordinator.Reapable;
+import com.arjuna.ats.arjuna.coordinator.TxControl;
+import com.arjuna.ats.arjuna.common.Uid;
+import com.arjuna.ats.internal.arjuna.coordinator.ReaperElement;
+import com.hp.mwtests.ts.arjuna.resources.BasicObject;
+
+import java.util.SortedSet;
+import java.util.TreeSet;
+
+public class PersistenceUnitTest extends TestCase
+{
+    public static Test suite ()
+    {
+        return new TestSuite(PersistenceUnitTest.class);
+    }
+
+    public void testSaveRestore () throws Exception
+    {
+        final BasicObject obj = new BasicObject();
+        final Uid objUid = obj.get_uid();
+
+        obj.set(1234);
+        obj.deactivate();
+        
+        final BasicObject rec = new BasicObject(objUid);
+        int res = rec.get();
+
+        assertEquals(res, 1234);
+    }
+}

Modified: labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/resources/BasicObject.java
===================================================================
--- labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/resources/BasicObject.java	2009-03-13 15:47:51 UTC (rev 25639)
+++ labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/resources/BasicObject.java	2009-03-13 16:03:43 UTC (rev 25640)
@@ -76,9 +76,10 @@
 
     public int get ()
     {
-	activate();
-	
-	return state;
+	if (activate())
+	    return state;
+	else
+	    return -1;
     }
 
     public String type ()
@@ -86,11 +87,22 @@
 	return "StateManager/BasicObject";
     }
     
+    public boolean deactivate ()
+    {
+        return super.deactivate();
+    }
+    
+    public boolean activate ()
+    {
+        return super.activate();
+    }
+    
     public boolean save_state (OutputObjectState os, int type)
     {
 	try
 	{
 	    os.packInt(state);
+	    os.packBytes(moreState);
 	}
 	catch (Exception ex)
 	{
@@ -104,7 +116,19 @@
     {
 	try
 	{
+	    state = -1;
+	    moreState = null;
+	    
 	    state = os.unpackInt();
+	    moreState = os.unpackBytes();
+	    
+	    if ((moreState[0] == 'a') && (moreState[1] == 'b')
+	            && (moreState[2] == 'c') && (moreState[3] == 'd'))
+	    {
+	        // ok
+	    }
+	    else
+	        return false;
 	}
 	catch (Exception ex)
 	{
@@ -115,5 +139,5 @@
     }
     
     private int state;
-    
+    private byte[] moreState = {'a', 'b', 'c', 'd'};
 }




More information about the jboss-svn-commits mailing list