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 2022/03/30 02:29:23 UTC

[logging-log4j2] 01/02: Remove PluginContext

This is an automated email from the ASF dual-hosted git repository.

mattsicker pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/logging-log4j2.git

commit 060264c9b09c94f1986ba1ca28107f9f605393b4
Author: Matt Sicker <ma...@apache.org>
AuthorDate: Tue Mar 29 20:26:12 2022 -0500

    Remove PluginContext
    
    Signed-off-by: Matt Sicker <ma...@apache.org>
---
 .../logging/log4j/plugins/util/PluginContext.java  | 45 ----------------------
 .../logging/log4j/plugins/util/PluginRegistry.java | 16 ++++----
 2 files changed, 7 insertions(+), 54 deletions(-)

diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/util/PluginContext.java b/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/util/PluginContext.java
deleted file mode 100644
index ccee554..0000000
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/util/PluginContext.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache license, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the license for the specific language governing permissions and
- * limitations under the license.
- */
-
-package org.apache.logging.log4j.plugins.util;
-
-import org.apache.logging.log4j.util.LoaderUtil;
-
-import java.lang.invoke.MethodHandles;
-import java.lang.invoke.MethodHandles.Lookup;
-
-public class PluginContext {
-    private final ClassLoader classLoader;
-    private final Lookup lookup;
-
-    public PluginContext() {
-        this(LoaderUtil.getClassLoader(), MethodHandles.lookup());
-    }
-
-    public PluginContext(final ClassLoader classLoader, final Lookup lookup) {
-        this.classLoader = classLoader;
-        this.lookup = lookup;
-    }
-
-    public ClassLoader getClassLoader() {
-        return classLoader;
-    }
-
-    public Lookup getLookup() {
-        return lookup;
-    }
-}
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/util/PluginRegistry.java b/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/util/PluginRegistry.java
index 413f9e1..e68bfdb 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/util/PluginRegistry.java
+++ b/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/util/PluginRegistry.java
@@ -29,7 +29,6 @@ import org.apache.logging.log4j.util.LoaderUtil;
 import org.apache.logging.log4j.util.Strings;
 
 import java.io.IOException;
-import java.lang.invoke.MethodHandles;
 import java.net.URI;
 import java.net.URL;
 import java.text.DecimalFormat;
@@ -117,7 +116,7 @@ public class PluginRegistry {
             // already loaded
             return existing;
         }
-        final Map<String, List<PluginType<?>>> newPluginsByCategory = decodeCacheFiles(new PluginContext());
+        final Map<String, List<PluginType<?>>> newPluginsByCategory = decodeCacheFiles(LoaderUtil.getClassLoader());
         loadPlugins(newPluginsByCategory);
 
         // Note multiple threads could be calling this method concurrently. Both will do the work,
@@ -151,7 +150,7 @@ public class PluginRegistry {
             // already loaded from this classloader
             return existing;
         }
-        final Map<String, List<PluginType<?>>> newPluginsByCategory = decodeCacheFiles(new PluginContext(loader, MethodHandles.lookup()));
+        final Map<String, List<PluginType<?>>> newPluginsByCategory = decodeCacheFiles(loader);
         loadPlugins(loader, newPluginsByCategory);
 
         // Note multiple threads could be calling this method concurrently. Both will do the work,
@@ -231,14 +230,13 @@ public class PluginRegistry {
         });
     }
 
-    private Map<String, List<PluginType<?>>> decodeCacheFiles(final PluginContext context) {
+    private Map<String, List<PluginType<?>>> decodeCacheFiles(final ClassLoader classLoader) {
         final long startTime = System.nanoTime();
         final PluginCache cache = new PluginCache();
         try {
-            final ClassLoader loader = context.getClassLoader();
-            final Enumeration<URL> resources = loader.getResources(PluginManager.PLUGIN_CACHE_FILE);
+            final Enumeration<URL> resources = classLoader.getResources(PluginManager.PLUGIN_CACHE_FILE);
             if (resources == null) {
-                LOGGER.info("Plugin preloads not available from class loader {}", loader);
+                LOGGER.info("Plugin preloads not available from class loader {}", classLoader);
             } else {
                 cache.loadCacheFiles(resources);
             }
@@ -253,7 +251,7 @@ public class PluginRegistry {
             newPluginsByCategory.put(categoryLowerCase, types);
             for (final Map.Entry<String, PluginEntry> inner : outer.getValue().entrySet()) {
                 final PluginEntry entry = inner.getValue();
-                final PluginType<?> type = new PluginType<>(entry, context.getClassLoader());
+                final PluginType<?> type = new PluginType<>(entry, classLoader);
                 types.add(type);
                 ++pluginCount;
             }
@@ -263,7 +261,7 @@ public class PluginRegistry {
             final long endTime = System.nanoTime();
             final DecimalFormat numFormat = new DecimalFormat("#0.000000");
             return "Took " + numFormat.format((endTime - startTime) * 1e-9) +
-                    " seconds to load " + numPlugins + " plugins from " + context.getClassLoader();
+                    " seconds to load " + numPlugins + " plugins from " + classLoader;
         });
         return newPluginsByCategory;
     }