You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@logging.apache.org by ma...@apache.org on 2014/09/21 20:28:55 UTC

[2/4] git commit: Use JndiManager in JndiContextSelector.

Use JndiManager in JndiContextSelector.


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

Branch: refs/heads/master
Commit: f4a51e718410958d76fe0a4c387c00996a7b31e3
Parents: c8b45ce
Author: Matt Sicker <ma...@apache.org>
Authored: Sun Sep 21 13:22:31 2014 -0500
Committer: Matt Sicker <ma...@apache.org>
Committed: Sun Sep 21 13:22:31 2014 -0500

----------------------------------------------------------------------
 .../core/selector/JndiContextSelector.java      | 27 ++++----------------
 1 file changed, 5 insertions(+), 22 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/f4a51e71/log4j-core/src/main/java/org/apache/logging/log4j/core/selector/JndiContextSelector.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/selector/JndiContextSelector.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/selector/JndiContextSelector.java
index 5f391e5..c6f4f05 100644
--- a/log4j-core/src/main/java/org/apache/logging/log4j/core/selector/JndiContextSelector.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/selector/JndiContextSelector.java
@@ -23,16 +23,12 @@ import java.util.List;
 import java.util.Map;
 import java.util.concurrent.ConcurrentHashMap;
 import java.util.concurrent.ConcurrentMap;
-
-import javax.naming.Context;
-import javax.naming.InitialContext;
-import javax.naming.NameNotFoundException;
 import javax.naming.NamingException;
 
 import org.apache.logging.log4j.core.LoggerContext;
 import org.apache.logging.log4j.core.impl.ContextAnchor;
+import org.apache.logging.log4j.core.net.JndiManager;
 import org.apache.logging.log4j.core.util.Constants;
-import org.apache.logging.log4j.core.util.JndiCloser;
 import org.apache.logging.log4j.status.StatusLogger;
 
 /**
@@ -112,14 +108,13 @@ public class JndiContextSelector implements NamedContextSelector {
 
         String loggingContextName = null;
 
-        Context ctx = null;
+        final JndiManager jndiManager = JndiManager.getDefaultManager(getClass().getName());
         try {
-            ctx = new InitialContext();
-            loggingContextName = (String) lookup(ctx, Constants.JNDI_CONTEXT_NAME);
+            loggingContextName = jndiManager.lookup(Constants.JNDI_CONTEXT_NAME);
         } catch (final NamingException ne) {
-            LOGGER.error("Unable to lookup " + Constants.JNDI_CONTEXT_NAME, ne);
+            LOGGER.error("Unable to lookup {}", Constants.JNDI_CONTEXT_NAME, ne);
         } finally {
-            JndiCloser.closeSilently(ctx);
+            jndiManager.release();
         }
 
         return loggingContextName == null ? CONTEXT : locateContext(loggingContextName, null, configLocation);
@@ -159,16 +154,4 @@ public class JndiContextSelector implements NamedContextSelector {
         return Collections.unmodifiableList(list);
     }
 
-
-    protected static Object lookup(final Context ctx, final String name) throws NamingException {
-        if (ctx == null) {
-            return null;
-        }
-        try {
-            return ctx.lookup(name);
-        } catch (final NameNotFoundException e) {
-            LOGGER.error("Could not find name [" + name + "].");
-            throw e;
-        }
-    }
 }