You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by jg...@apache.org on 2015/07/30 16:53:22 UTC

[11/17] tomee git commit: style

style

Conflicts:
	container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/managed/local/ManagedConnection.java


Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/f41ed730
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/f41ed730
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/f41ed730

Branch: refs/heads/tomee-1.7.x
Commit: f41ed7303c7cc89f7325a98f5e5bcb17896b12fc
Parents: 4586f1e
Author: Romain Manni-Bucau <rm...@apache.org>
Authored: Thu Jul 16 14:23:47 2015 +0200
Committer: Jonathan Gallimore <jo...@jrg.me.uk>
Committed: Thu Jul 30 14:05:05 2015 +0100

----------------------------------------------------------------------
 .../openejb/assembler/classic/Assembler.java    |  1 -
 .../jdbc/managed/local/ManagedConnection.java   | 61 +++++++++++++-------
 2 files changed, 40 insertions(+), 22 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tomee/blob/f41ed730/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/Assembler.java
----------------------------------------------------------------------
diff --git a/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/Assembler.java b/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/Assembler.java
index e5c1899..a2476ef 100644
--- a/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/Assembler.java
+++ b/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/Assembler.java
@@ -109,7 +109,6 @@ import org.apache.openejb.quartz.Scheduler;
 import org.apache.openejb.resource.GeronimoConnectionManagerFactory;
 import org.apache.openejb.resource.PropertiesFactory;
 import org.apache.openejb.resource.jdbc.DataSourceFactory;
-import org.apache.openejb.resource.jdbc.managed.local.ManagedDataSource;
 import org.apache.openejb.spi.ApplicationServer;
 import org.apache.openejb.spi.ContainerSystem;
 import org.apache.openejb.spi.SecurityService;

http://git-wip-us.apache.org/repos/asf/tomee/blob/f41ed730/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/managed/local/ManagedConnection.java
----------------------------------------------------------------------
diff --git a/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/managed/local/ManagedConnection.java b/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/managed/local/ManagedConnection.java
index c46365e..c46ffe7 100644
--- a/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/managed/local/ManagedConnection.java
+++ b/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/managed/local/ManagedConnection.java
@@ -226,24 +226,11 @@ public class ManagedConnection implements InvocationHandler {
         }
     }
 
-    public static void pushDataSource(final CommonDataSource ds) {
-        CONNECTION_BY_TX_BY_DS.put(ds.hashCode(), new ConcurrentHashMap<Transaction, Connection>());
-    }
-
-    public static void cleanDataSource(final CommonDataSource ds) {
-        final Map<Transaction, Connection> map = CONNECTION_BY_TX_BY_DS.remove(ds.hashCode());
-        if (map != null) {
-            map.clear();
-        }
-    }
-
-    private static class ClosingSynchronization implements Synchronization {
+        private static class ClosingSynchronization implements Synchronization {
         private final Connection connection;
-        private final Map<Transaction, Connection> mapToCleanup;
 
-        public ClosingSynchronization(final Connection delegate, final Map<Transaction, Connection> connByTx) {
-            connection = delegate;
-            mapToCleanup = connByTx;
+        public ClosingSynchronization(final Connection delegate) {
+            this.connection = delegate;
         }
 
         @Override
@@ -254,12 +241,44 @@ public class ManagedConnection implements InvocationHandler {
         @Override
         public void afterCompletion(final int status) {
             close(connection);
-            try {
-                final Transaction tx = OpenEJB.getTransactionManager().getTransaction();
-                mapToCleanup.remove(tx);
-            } catch (final SystemException ignored) {
-                // no-op
+        }
+    }
+
+    private static final class Key {
+        private final CommonDataSource ds;
+        private final String user;
+        private final String pwd;
+        private final int hash;
+
+        private Key(final CommonDataSource ds, final String user, final String pwd) {
+            this.ds = ds;
+            this.user = user;
+            this.pwd = pwd;
+
+            int result = ds.hashCode();
+            result = 31 * result + (user != null ? user.hashCode() : 0);
+            result = 31 * result + (pwd != null ? pwd.hashCode() : 0);
+            hash = result;
+        }
+
+        @Override
+        public boolean equals(final Object o) {
+            if (this == o) {
+                return true;
+            }
+            if (o == null || getClass() != o.getClass()) {
+                return false;
             }
+
+            Key key = Key.class.cast(o);
+            return (ds == key.ds || ds.equals(key.ds)) &&
+                    !(user != null ? !user.equals(key.user) : key.user != null) &&
+                    !(pwd != null ? !pwd.equals(key.pwd) : key.pwd != null);
+        }
+
+        @Override
+        public int hashCode() {
+            return hash;
         }
     }
 }