[ARIES-1689] Improve performance
git-svn-id: https://svn.apache.org/repos/asf/aries/trunk/jpa@1783861 13f79535-47bb-0310-9956-ffa450edef68
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 960e375..59a5c8e 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
@@ -53,10 +53,8 @@
@Override
public Object preCall(ComponentMetadata cm, Method m, Object... parameters) throws Throwable {
- synchronized (this) {
- if (coordinator == null) {
- initServices();
- }
+ if (coordinator == null) {
+ initServices();
}
try {
LOG.debug("PreCall for bean {}, method {}", cm.getId(), m.getName());
@@ -72,9 +70,11 @@
}
}
- private void initServices() {
- coordinator = (Coordinator)container.getComponentInstance(coordinatorId);
- em = (EntityManager)container.getComponentInstance(emId);
+ private synchronized void initServices() {
+ if (coordinator == null) {
+ coordinator = (Coordinator)container.getComponentInstance(coordinatorId);
+ em = (EntityManager)container.getComponentInstance(emId);
+ }
}
@Override