[jboss-cvs] JBoss Messaging SVN: r2269 - in trunk: src/main/org/jboss/messaging/core/tx and 1 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Sun Feb 11 13:20:10 EST 2007


Author: timfox
Date: 2007-02-11 13:20:10 -0500 (Sun, 11 Feb 2007)
New Revision: 2269

Modified:
   trunk/src/main/org/jboss/jms/tx/MessagingXAResource.java
   trunk/src/main/org/jboss/messaging/core/tx/MessagingXid.java
   trunk/tests/src/org/jboss/test/messaging/jms/ClientInRestrictedSecurityEnvironmentTest.java
Log:
copy constructor for messaging xid


Modified: trunk/src/main/org/jboss/jms/tx/MessagingXAResource.java
===================================================================
--- trunk/src/main/org/jboss/jms/tx/MessagingXAResource.java	2007-02-11 18:02:58 UTC (rev 2268)
+++ trunk/src/main/org/jboss/jms/tx/MessagingXAResource.java	2007-02-11 18:20:10 UTC (rev 2269)
@@ -120,7 +120,7 @@
 
       if (!(xid instanceof MessagingXid))
       {
-         xid = new MessagingXid(xid.getBranchQualifier(), xid.getFormatId(), xid.getGlobalTransactionId());
+         xid = new MessagingXid(xid);
       }
 
       boolean convertTx = false;
@@ -182,7 +182,7 @@
 
       if (!(xid instanceof MessagingXid))
       {
-         xid = new MessagingXid(xid.getBranchQualifier(), xid.getFormatId(), xid.getGlobalTransactionId());
+         xid = new MessagingXid(xid);
       }
 
       //TODO - why do we need this synchronized block?
@@ -215,7 +215,7 @@
 
       if (!(xid instanceof MessagingXid))
       {
-         xid = new MessagingXid(xid.getBranchQualifier(), xid.getFormatId(), xid.getGlobalTransactionId());
+         xid = new MessagingXid(xid);
       }
 
       return rm.prepare(xid, connection);
@@ -229,7 +229,7 @@
 
       if (!(xid instanceof MessagingXid))
       {
-         xid = new MessagingXid(xid.getBranchQualifier(), xid.getFormatId(), xid.getGlobalTransactionId());
+         xid = new MessagingXid(xid);
       }
 
       rm.commit(xid, onePhase, connection);
@@ -243,7 +243,7 @@
 
       if (!(xid instanceof MessagingXid))
       {
-         xid = new MessagingXid(xid.getBranchQualifier(), xid.getFormatId(), xid.getGlobalTransactionId());
+         xid = new MessagingXid(xid);
       }
 
       rm.rollback(xid, connection);

Modified: trunk/src/main/org/jboss/messaging/core/tx/MessagingXid.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/tx/MessagingXid.java	2007-02-11 18:02:58 UTC (rev 2268)
+++ trunk/src/main/org/jboss/messaging/core/tx/MessagingXid.java	2007-02-11 18:20:10 UTC (rev 2269)
@@ -79,6 +79,14 @@
       calcHash();     
    }
    
+   //Copy constructor
+   public MessagingXid(Xid other)
+   {
+      this.branchQualifier = copyBytes(other.getBranchQualifier());
+      this.formatId = other.getFormatId();
+      this.globalTransactionId = copyBytes(other.getGlobalTransactionId());
+   }
+      
    public int hashCode()
    {
       return hash;
@@ -185,5 +193,14 @@
       String s = new String(hashBytes);
       hash = s.hashCode();
    }
+   
+   private byte[] copyBytes(byte[] other)
+   {
+      byte[] bytes = new byte[other.length];
+      
+      System.arraycopy(other, 0, bytes, 0, other.length);
+      
+      return bytes;
+   }
 
 }

Modified: trunk/tests/src/org/jboss/test/messaging/jms/ClientInRestrictedSecurityEnvironmentTest.java
===================================================================
--- trunk/tests/src/org/jboss/test/messaging/jms/ClientInRestrictedSecurityEnvironmentTest.java	2007-02-11 18:02:58 UTC (rev 2268)
+++ trunk/tests/src/org/jboss/test/messaging/jms/ClientInRestrictedSecurityEnvironmentTest.java	2007-02-11 18:20:10 UTC (rev 2269)
@@ -21,6 +21,8 @@
  */
 package org.jboss.test.messaging.jms;
 
+import java.net.SocketPermission;
+
 import javax.jms.Connection;
 import javax.jms.ConnectionFactory;
 import javax.jms.MessageConsumer;
@@ -35,8 +37,6 @@
 import org.jboss.test.messaging.tools.ServerManagement;
 import org.jboss.test.messaging.tools.misc.ConfigurableSecurityManager;
 
-import java.net.SocketPermission;
-
 /**
  * This test runs the JMS client in a restricted security environments.
  *




More information about the jboss-cvs-commits mailing list