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/04/27 03:11:22 UTC

svn commit: r1590333 - /logging/log4j/log4j2/trunk/log4j-core/src/main/java/org/apache/logging/log4j/core/config/plugins/util/PluginManager.java

Author: mattsicker
Date: Sun Apr 27 01:11:21 2014
New Revision: 1590333

URL: http://svn.apache.org/r1590333
Log:
Use proper ClassLoader for pre-loading plugins.

Modified:
    logging/log4j/log4j2/trunk/log4j-core/src/main/java/org/apache/logging/log4j/core/config/plugins/util/PluginManager.java

Modified: logging/log4j/log4j2/trunk/log4j-core/src/main/java/org/apache/logging/log4j/core/config/plugins/util/PluginManager.java
URL: http://svn.apache.org/viewvc/logging/log4j/log4j2/trunk/log4j-core/src/main/java/org/apache/logging/log4j/core/config/plugins/util/PluginManager.java?rev=1590333&r1=1590332&r2=1590333&view=diff
==============================================================================
--- logging/log4j/log4j2/trunk/log4j-core/src/main/java/org/apache/logging/log4j/core/config/plugins/util/PluginManager.java (original)
+++ logging/log4j/log4j2/trunk/log4j-core/src/main/java/org/apache/logging/log4j/core/config/plugins/util/PluginManager.java Sun Apr 27 01:11:21 2014
@@ -34,7 +34,6 @@ import java.util.Map;
 import java.util.concurrent.ConcurrentMap;
 import java.util.concurrent.CopyOnWriteArrayList;
 
-import org.apache.logging.log4j.Level;
 import org.apache.logging.log4j.Logger;
 import org.apache.logging.log4j.core.config.plugins.Plugin;
 import org.apache.logging.log4j.core.config.plugins.PluginAliases;
@@ -243,11 +242,12 @@ public class PluginManager {
                         final boolean printable = dis.readBoolean();
                         final boolean defer = dis.readBoolean();
                         try {
-                            final PluginType<?> pluginType = loadPluginType(className, name, printable, defer);
+                            final Class<?> clazz = classLoader.loadClass(className);
+                            @SuppressWarnings("unchecked")
+                            final PluginType<?> pluginType = new PluginType(clazz, name, printable, defer);
                             types.put(key, pluginType);
                         } catch (final ClassNotFoundException e) {
-                            LOGGER.catching(Level.DEBUG, e);
-                            LOGGER.info("Plugin [{}] could not be loaded due to missing classes.", className);
+                            LOGGER.info("Plugin [{}] could not be loaded due to missing classes.", className, e);
                         }
                     }
                 }
@@ -260,16 +260,6 @@ public class PluginManager {
         return map.isEmpty() ? null : map;
     }
 
-    private static PluginType<?> loadPluginType(final String className,
-                                                final String name,
-                                                final boolean printable,
-                                                final boolean defer) throws ClassNotFoundException {
-        final Class<?> clazz = Loader.loadClass(className);
-        @SuppressWarnings("unchecked")
-        final PluginType<?> pluginType = new PluginType(clazz, name, printable, defer);
-        return pluginType;
-    }
-
     private static void encode(final PluginRegistry<PluginType<?>> map) {
         final String fileName = rootDir + PATH + FILENAME;
         final File file = new File(rootDir + PATH);