You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@aries.apache.org by cs...@apache.org on 2017/04/18 12:55:20 UTC

[28/50] aries-jpa git commit: [ARIES-1689] added synchronized statement for initialization block

[ARIES-1689] added synchronized statement for initialization block

git-svn-id: https://svn.apache.org/repos/asf/aries/trunk/jpa@1783675 13f79535-47bb-0310-9956-ffa450edef68


Project: http://git-wip-us.apache.org/repos/asf/aries-jpa/repo
Commit: http://git-wip-us.apache.org/repos/asf/aries-jpa/commit/0b82592f
Tree: http://git-wip-us.apache.org/repos/asf/aries-jpa/tree/0b82592f
Diff: http://git-wip-us.apache.org/repos/asf/aries-jpa/diff/0b82592f

Branch: refs/heads/master
Commit: 0b82592fa7960384eb1e3442950112052e7e279a
Parents: 82c41d3
Author: ggerla <gg...@13f79535-47bb-0310-9956-ffa450edef68>
Authored: Sun Feb 19 17:13:30 2017 +0000
Committer: ggerla <gg...@13f79535-47bb-0310-9956-ffa450edef68>
Committed: Sun Feb 19 17:13:30 2017 +0000

----------------------------------------------------------------------
 .../apache/aries/jpa/blueprint/impl/JpaInterceptor.java | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/aries-jpa/blob/0b82592f/jpa-blueprint/src/main/java/org/apache/aries/jpa/blueprint/impl/JpaInterceptor.java
----------------------------------------------------------------------
diff --git a/jpa-blueprint/src/main/java/org/apache/aries/jpa/blueprint/impl/JpaInterceptor.java b/jpa-blueprint/src/main/java/org/apache/aries/jpa/blueprint/impl/JpaInterceptor.java
index 6a11125..960e375 100644
--- a/jpa-blueprint/src/main/java/org/apache/aries/jpa/blueprint/impl/JpaInterceptor.java
+++ b/jpa-blueprint/src/main/java/org/apache/aries/jpa/blueprint/impl/JpaInterceptor.java
@@ -33,7 +33,7 @@ import org.slf4j.LoggerFactory;
 
 public class JpaInterceptor implements Interceptor {
     private static final Logger LOG = LoggerFactory.getLogger(JpaInterceptor.class);
-    EntityManager em;
+    private EntityManager em;
     private Boolean cachedIsResourceLocal;
     private Coordinator coordinator;
     private BlueprintContainer container;
@@ -53,8 +53,10 @@ public class JpaInterceptor implements Interceptor {
 
     @Override
     public Object preCall(ComponentMetadata cm, Method m, Object... parameters) throws Throwable {
-        if (coordinator == null) {
-            initServices();
+        synchronized (this) {
+            if (coordinator == null) {
+                initServices();
+            }
         }
         try {
             LOG.debug("PreCall for bean {}, method {}", cm.getId(), m.getName());
@@ -79,7 +81,7 @@ public class JpaInterceptor implements Interceptor {
     public void postCallWithException(ComponentMetadata cm, Method m, Throwable ex, Object preCallToken) {
         LOG.debug("PostCallWithException for bean {}, method {}", cm.getId(), m.getName(), ex);
         if (preCallToken != null) {
-            ((Coordination) preCallToken).fail(ex);
+            ((Coordination)preCallToken).fail(ex);
         }
     }
 
@@ -88,7 +90,7 @@ public class JpaInterceptor implements Interceptor {
         throws Exception {
         LOG.debug("PostCallWithReturn for bean {}, method {}", cm.getId(), m.getName());
         if (preCallToken != null) {
-            ((Coordination) preCallToken).end();
+            ((Coordination)preCallToken).end();
         }
     }