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 2019/10/07 02:18:03 UTC

[logging-log4j2] branch master updated: Use method injection in ListAppender

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


The following commit(s) were added to refs/heads/master by this push:
     new 9788eee  Use method injection in ListAppender
9788eee is described below

commit 9788eee10851d0edb20b79295fb49d05151819e4
Author: Matt Sicker <bo...@gmail.com>
AuthorDate: Sun Oct 6 21:17:57 2019 -0500

    Use method injection in ListAppender
    
    Quick smoke test for method-based injection.
    
    Signed-off-by: Matt Sicker <bo...@gmail.com>
---
 .../logging/log4j/test/appender/ListAppender.java      | 18 +++++++-----------
 1 file changed, 7 insertions(+), 11 deletions(-)

diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/test/appender/ListAppender.java b/log4j-core/src/test/java/org/apache/logging/log4j/test/appender/ListAppender.java
index c6cd275..1f9ec2d 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/test/appender/ListAppender.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/test/appender/ListAppender.java
@@ -26,7 +26,7 @@ import org.apache.logging.log4j.core.appender.AbstractAppender;
 import org.apache.logging.log4j.core.config.Property;
 import org.apache.logging.log4j.core.impl.MutableLogEvent;
 import org.apache.logging.log4j.plugins.Plugin;
-import org.apache.logging.log4j.plugins.PluginBuilderAttribute;
+import org.apache.logging.log4j.plugins.PluginAttribute;
 import org.apache.logging.log4j.plugins.PluginElement;
 import org.apache.logging.log4j.plugins.PluginFactory;
 import org.apache.logging.log4j.plugins.validation.constraints.Required;
@@ -230,42 +230,38 @@ public class ListAppender extends AbstractAppender {
 
     public static class Builder implements org.apache.logging.log4j.plugins.util.Builder<ListAppender> {
 
-        @PluginBuilderAttribute
-        @Required
         private String name;
-
-        @PluginBuilderAttribute
         private boolean entryPerNewLine;
-
-        @PluginBuilderAttribute
         private boolean raw;
-
-        @PluginElement("Layout")
         private Layout<? extends Serializable> layout;
-
-        @PluginElement("Filter")
         private Filter filter;
 
+        @PluginAttribute
+        @Required
         public Builder setName(final String name) {
             this.name = name;
             return this;
         }
 
+        @PluginAttribute
         public Builder setEntryPerNewLine(final boolean entryPerNewLine) {
             this.entryPerNewLine = entryPerNewLine;
             return this;
         }
 
+        @PluginAttribute
         public Builder setRaw(final boolean raw) {
             this.raw = raw;
             return this;
         }
 
+        @PluginElement
         public Builder setLayout(final Layout<? extends Serializable> layout) {
             this.layout = layout;
             return this;
         }
 
+        @PluginElement
         public Builder setFilter(final Filter filter) {
             this.filter = filter;
             return this;


Re: [logging-log4j2] branch master updated: Use method injection in ListAppender

Posted by Matt Sicker <ma...@apache.org>.
I'd like to highlight this as an example of how the latest updates the
plugin system allow for using methods and default name providers.

On Sun, 6 Oct 2019 at 21:18, <ma...@apache.org> wrote:
>
> 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
>
>
> The following commit(s) were added to refs/heads/master by this push:
>      new 9788eee  Use method injection in ListAppender
> 9788eee is described below
>
> commit 9788eee10851d0edb20b79295fb49d05151819e4
> Author: Matt Sicker <bo...@gmail.com>
> AuthorDate: Sun Oct 6 21:17:57 2019 -0500
>
>     Use method injection in ListAppender
>
>     Quick smoke test for method-based injection.
>
>     Signed-off-by: Matt Sicker <bo...@gmail.com>
> ---
>  .../logging/log4j/test/appender/ListAppender.java      | 18 +++++++-----------
>  1 file changed, 7 insertions(+), 11 deletions(-)
>
> diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/test/appender/ListAppender.java b/log4j-core/src/test/java/org/apache/logging/log4j/test/appender/ListAppender.java
> index c6cd275..1f9ec2d 100644
> --- a/log4j-core/src/test/java/org/apache/logging/log4j/test/appender/ListAppender.java
> +++ b/log4j-core/src/test/java/org/apache/logging/log4j/test/appender/ListAppender.java
> @@ -26,7 +26,7 @@ import org.apache.logging.log4j.core.appender.AbstractAppender;
>  import org.apache.logging.log4j.core.config.Property;
>  import org.apache.logging.log4j.core.impl.MutableLogEvent;
>  import org.apache.logging.log4j.plugins.Plugin;
> -import org.apache.logging.log4j.plugins.PluginBuilderAttribute;
> +import org.apache.logging.log4j.plugins.PluginAttribute;
>  import org.apache.logging.log4j.plugins.PluginElement;
>  import org.apache.logging.log4j.plugins.PluginFactory;
>  import org.apache.logging.log4j.plugins.validation.constraints.Required;
> @@ -230,42 +230,38 @@ public class ListAppender extends AbstractAppender {
>
>      public static class Builder implements org.apache.logging.log4j.plugins.util.Builder<ListAppender> {
>
> -        @PluginBuilderAttribute
> -        @Required
>          private String name;
> -
> -        @PluginBuilderAttribute
>          private boolean entryPerNewLine;
> -
> -        @PluginBuilderAttribute
>          private boolean raw;
> -
> -        @PluginElement("Layout")
>          private Layout<? extends Serializable> layout;
> -
> -        @PluginElement("Filter")
>          private Filter filter;
>
> +        @PluginAttribute
> +        @Required
>          public Builder setName(final String name) {
>              this.name = name;
>              return this;
>          }
>
> +        @PluginAttribute
>          public Builder setEntryPerNewLine(final boolean entryPerNewLine) {
>              this.entryPerNewLine = entryPerNewLine;
>              return this;
>          }
>
> +        @PluginAttribute
>          public Builder setRaw(final boolean raw) {
>              this.raw = raw;
>              return this;
>          }
>
> +        @PluginElement
>          public Builder setLayout(final Layout<? extends Serializable> layout) {
>              this.layout = layout;
>              return this;
>          }
>
> +        @PluginElement
>          public Builder setFilter(final Filter filter) {
>              this.filter = filter;
>              return this;
>


-- 
Matt Sicker
Secretary, Apache Software Foundation
VP Logging Services, ASF