LOG4J2-1672 make LevelRangeFilter garbage-free

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

Branch: refs/heads/master
Commit: f0a0245a373f780a7a49a1dd2f0b3ac18af4a2c4
Parents: 243ff5b
Author: rpopma <rpo...@apache.org>
Authored: Sun Nov 6 23:22:00 2016 +0900
Committer: rpopma <rpo...@apache.org>
Committed: Sun Nov 6 23:22:00 2016 +0900

----------------------------------------------------------------------
 .../log4j/core/filter/LevelRangeFilter.java     | 73 +++++++++++++++++++-
 src/changes/changes.xml                         |  3 +
 2 files changed, 74 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/f0a0245a/log4j-core/src/main/java/org/apache/logging/log4j/core/filter/LevelRangeFilter.java
----------------------------------------------------------------------
diff --git 
a/log4j-core/src/main/java/org/apache/logging/log4j/core/filter/LevelRangeFilter.java
 
b/log4j-core/src/main/java/org/apache/logging/log4j/core/filter/LevelRangeFilter.java
index fd78433..627b438 100644
--- 
a/log4j-core/src/main/java/org/apache/logging/log4j/core/filter/LevelRangeFilter.java
+++ 
b/log4j-core/src/main/java/org/apache/logging/log4j/core/filter/LevelRangeFilter.java
@@ -42,7 +42,7 @@ public final class LevelRangeFilter extends AbstractFilter {
 
     /**
      * Create a ThresholdFilter.
-     * 
+     *
      * @param minLevel
      *            The minimum log Level.
      * @param maxLevel
@@ -58,7 +58,7 @@ public final class LevelRangeFilter extends AbstractFilter {
             // @formatter:off
             @PluginAttribute("minLevel") final Level minLevel,
             @PluginAttribute("maxLevel") final Level maxLevel,
-            @PluginAttribute("onMatch") final Result match, 
+            @PluginAttribute("onMatch") final Result match,
             @PluginAttribute("onMismatch") final Result mismatch) {
             // @formatter:on
         final Level actualMinLevel = minLevel == null ? Level.ERROR : minLevel;
@@ -104,6 +104,75 @@ public final class LevelRangeFilter extends AbstractFilter 
{
         return filter(level);
     }
 
+    @Override
+    public Result filter(final Logger logger, final Level level, final Marker 
marker, final String msg,
+            final Object p0) {
+        return filter(level);
+    }
+
+    @Override
+    public Result filter(final Logger logger, final Level level, final Marker 
marker, final String msg,
+            final Object p0, final Object p1) {
+        return filter(level);
+    }
+
+    @Override
+    public Result filter(final Logger logger, final Level level, final Marker 
marker, final String msg,
+            final Object p0, final Object p1, final Object p2) {
+        return filter(level);
+    }
+
+    @Override
+    public Result filter(final Logger logger, final Level level, final Marker 
marker, final String msg,
+            final Object p0, final Object p1, final Object p2, final Object 
p3) {
+        return filter(level);
+    }
+
+    @Override
+    public Result filter(final Logger logger, final Level level, final Marker 
marker, final String msg,
+            final Object p0, final Object p1, final Object p2, final Object p3,
+            final Object p4) {
+        return filter(level);
+    }
+
+    @Override
+    public Result filter(final Logger logger, final Level level, final Marker 
marker, final String msg,
+            final Object p0, final Object p1, final Object p2, final Object p3,
+            final Object p4, final Object p5) {
+        return filter(level);
+    }
+
+    @Override
+    public Result filter(final Logger logger, final Level level, final Marker 
marker, final String msg,
+            final Object p0, final Object p1, final Object p2, final Object p3,
+            final Object p4, final Object p5, final Object p6) {
+        return filter(level);
+    }
+
+    @Override
+    public Result filter(final Logger logger, final Level level, final Marker 
marker, final String msg,
+            final Object p0, final Object p1, final Object p2, final Object p3,
+            final Object p4, final Object p5, final Object p6,
+            final Object p7) {
+        return filter(level);
+    }
+
+    @Override
+    public Result filter(final Logger logger, final Level level, final Marker 
marker, final String msg,
+            final Object p0, final Object p1, final Object p2, final Object p3,
+            final Object p4, final Object p5, final Object p6,
+            final Object p7, final Object p8) {
+        return filter(level);
+    }
+
+    @Override
+    public Result filter(final Logger logger, final Level level, final Marker 
marker, final String msg,
+            final Object p0, final Object p1, final Object p2, final Object p3,
+            final Object p4, final Object p5, final Object p6,
+            final Object p7, final Object p8, final Object p9) {
+        return filter(level);
+    }
+
     public Level getMinLevel() {
         return minLevel;
     }

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/f0a0245a/src/changes/changes.xml
----------------------------------------------------------------------
diff --git a/src/changes/changes.xml b/src/changes/changes.xml
index e334cf9..fda05ad 100644
--- a/src/changes/changes.xml
+++ b/src/changes/changes.xml
@@ -24,6 +24,9 @@
   </properties>
   <body>
     <release version="2.8" date="2016-MM-DD" description="GA Release 2.8">
+      <action issue="LOG4J2-1672" dev="rpopma" type="fix">
+        (GC) Avoid allocating temporary objects in LevelRangeFilter.
+      </action>
       <action issue="LOG4J2-1671" dev="rpopma" type="fix">
         (GC) Avoid allocating temporary objects in 
EqualsIgnoreCaseReplacementConverter.
       </action>

Reply via email to