You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@logging.apache.org by mi...@apache.org on 2016/08/21 15:02:27 UTC

[1/3] logging-log4j2 git commit: Test packages configuration attribute

Repository: logging-log4j2
Updated Branches:
  refs/heads/LOG4J2-1528 872359805 -> 5f361e012


Test packages configuration attribute


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

Branch: refs/heads/LOG4J2-1528
Commit: 0353fa47493a4f6b4c0ec8a5a397de7a001849c4
Parents: 8723598
Author: Mikael St�ldal <mi...@staldal.nu>
Authored: Sun Aug 21 16:25:55 2016 +0200
Committer: Mikael St�ldal <mi...@staldal.nu>
Committed: Sun Aug 21 16:25:55 2016 +0200

----------------------------------------------------------------------
 .../log4j/core/config/builder/ConfigurationBuilderTest.java    | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/0353fa47/log4j-core/src/test/java/org/apache/logging/log4j/core/config/builder/ConfigurationBuilderTest.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/config/builder/ConfigurationBuilderTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/config/builder/ConfigurationBuilderTest.java
index b4b2bff..951038f 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/config/builder/ConfigurationBuilderTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/config/builder/ConfigurationBuilderTest.java
@@ -29,7 +29,7 @@ public class ConfigurationBuilderTest {
 
     private final static String expectedXml1 =
             "<?xml version='1.0' encoding='UTF-8'?>" + System.lineSeparator() +
-            "<Configuration name=\"config name\" status=\"ERROR\">" + System.lineSeparator() +
+            "<Configuration name=\"config name\" status=\"ERROR\" packages=\"foo,bar\">" + System.lineSeparator() +
             "\t<Properties>" + System.lineSeparator() +
             "\t\t<Property name=\"MyKey\">MyValue</Property>" + System.lineSeparator() +
             "\t</Properties>" + System.lineSeparator() +
@@ -62,13 +62,14 @@ public class ConfigurationBuilderTest {
         CustomConfigurationFactory.addTestFixtures("config name", builder);
         builder.addProperty("MyKey", "MyValue");
         builder.add(builder.newCustomLevel("Panic", 17));
+        builder.setPackages("foo,bar");
         final String xmlConfiguration = builder.toXmlConfiguration();
         assertEquals(expectedXml1, xmlConfiguration);
     }
 
     private final static String expectedXml2 =
             "<?xml version='1.0' encoding='UTF-8'?>" + System.lineSeparator() +
-            "<Configuration name=\"config name\" status=\"ERROR\">" + System.lineSeparator() +
+            "<Configuration name=\"config name\" status=\"ERROR\" packages=\"foo,bar\">" + System.lineSeparator() +
             "\t<Properties>" + System.lineSeparator() +
             "\t\t<Property name=\"MyKey\">MyValue</Property>" + System.lineSeparator() +
             "\t</Properties>" + System.lineSeparator() +
@@ -101,6 +102,7 @@ public class ConfigurationBuilderTest {
         CustomConfigurationFactory.addTestFixtures("config name", builder);
         builder.addProperty("MyKey", "MyValue");
         builder.add(builder.newCustomLevel("Panic", 17));
+        builder.setPackages("foo,bar");
         AbstractConfiguration configuration = builder.build(false);
         configuration.setup();
         final String xmlConfiguration = configuration.toXmlConfiguration();


[3/3] logging-log4j2 git commit: Avoid depending on commons-lang

Posted by mi...@apache.org.
Avoid depending on commons-lang


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

Branch: refs/heads/LOG4J2-1528
Commit: 5f361e01213b97d5cd0014ca5ab926bb5a270f32
Parents: 871a097
Author: Mikael St�ldal <mi...@staldal.nu>
Authored: Sun Aug 21 17:02:02 2016 +0200
Committer: Mikael St�ldal <mi...@staldal.nu>
Committed: Sun Aug 21 17:02:02 2016 +0200

----------------------------------------------------------------------
 log4j-1.2-api/pom.xml                                            | 4 ----
 .../src/main/java/org/apache/log4j/layout/Log4j1XmlLayout.java   | 4 ++--
 .../java/org/apache/log4j/pattern/Log4j1NdcPatternConverter.java | 4 ++--
 3 files changed, 4 insertions(+), 8 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/5f361e01/log4j-1.2-api/pom.xml
----------------------------------------------------------------------
diff --git a/log4j-1.2-api/pom.xml b/log4j-1.2-api/pom.xml
index 76b1937..779f050 100644
--- a/log4j-1.2-api/pom.xml
+++ b/log4j-1.2-api/pom.xml
@@ -54,10 +54,6 @@
       <artifactId>log4j-api</artifactId>
     </dependency>
     <dependency>
-      <groupId>org.apache.commons</groupId>
-      <artifactId>commons-lang3</artifactId>
-    </dependency>
-    <dependency>
       <groupId>org.apache.logging.log4j</groupId>
       <artifactId>log4j-api</artifactId>
       <type>test-jar</type>

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/5f361e01/log4j-1.2-api/src/main/java/org/apache/log4j/layout/Log4j1XmlLayout.java
----------------------------------------------------------------------
diff --git a/log4j-1.2-api/src/main/java/org/apache/log4j/layout/Log4j1XmlLayout.java b/log4j-1.2-api/src/main/java/org/apache/log4j/layout/Log4j1XmlLayout.java
index 8f9df10..1df66d5 100644
--- a/log4j-1.2-api/src/main/java/org/apache/log4j/layout/Log4j1XmlLayout.java
+++ b/log4j-1.2-api/src/main/java/org/apache/log4j/layout/Log4j1XmlLayout.java
@@ -16,7 +16,6 @@
  */
 package org.apache.log4j.layout;
 
-import org.apache.commons.lang3.StringUtils;
 import org.apache.logging.log4j.core.Layout;
 import org.apache.logging.log4j.core.LogEvent;
 import org.apache.logging.log4j.core.config.Node;
@@ -26,6 +25,7 @@ import org.apache.logging.log4j.core.config.plugins.PluginFactory;
 import org.apache.logging.log4j.core.layout.AbstractStringLayout;
 import org.apache.logging.log4j.core.layout.ByteBufferDestination;
 import org.apache.logging.log4j.core.util.Transform;
+import org.apache.logging.log4j.util.Strings;
 
 import java.nio.charset.StandardCharsets;
 import java.util.Arrays;
@@ -102,7 +102,7 @@ public final class Log4j1XmlLayout extends AbstractStringLayout {
         List<String> ndc = event.getContextStack().asList();
         if (!ndc.isEmpty()) {
             buf.append("<log4j:NDC><![CDATA[");
-            Transform.appendEscapingCData(buf, StringUtils.join(ndc, ' '));
+            Transform.appendEscapingCData(buf, Strings.join(ndc, ' '));
             buf.append("]]></log4j:NDC>\r\n");
         }
 

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/5f361e01/log4j-1.2-api/src/main/java/org/apache/log4j/pattern/Log4j1NdcPatternConverter.java
----------------------------------------------------------------------
diff --git a/log4j-1.2-api/src/main/java/org/apache/log4j/pattern/Log4j1NdcPatternConverter.java b/log4j-1.2-api/src/main/java/org/apache/log4j/pattern/Log4j1NdcPatternConverter.java
index d3f16f5..1eb38be 100644
--- a/log4j-1.2-api/src/main/java/org/apache/log4j/pattern/Log4j1NdcPatternConverter.java
+++ b/log4j-1.2-api/src/main/java/org/apache/log4j/pattern/Log4j1NdcPatternConverter.java
@@ -16,12 +16,12 @@
  */
 package org.apache.log4j.pattern;
 
-import org.apache.commons.lang3.StringUtils;
 import org.apache.logging.log4j.core.LogEvent;
 import org.apache.logging.log4j.core.config.plugins.Plugin;
 import org.apache.logging.log4j.core.pattern.ConverterKeys;
 import org.apache.logging.log4j.core.pattern.LogEventPatternConverter;
 import org.apache.logging.log4j.core.pattern.PatternConverter;
+import org.apache.logging.log4j.util.Strings;
 
 import java.util.List;
 
@@ -58,6 +58,6 @@ public final class Log4j1NdcPatternConverter extends LogEventPatternConverter {
     @Override
     public void format(final LogEvent event, final StringBuilder toAppendTo) {
         List<String> ndc = event.getContextStack().asList();
-        toAppendTo.append(StringUtils.join(ndc, ' '));
+        toAppendTo.append(Strings.join(ndc, ' '));
     }
 }


[2/3] logging-log4j2 git commit: Fix string-joining of packages configuration attribute

Posted by mi...@apache.org.
Fix string-joining of packages configuration attribute


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

Branch: refs/heads/LOG4J2-1528
Commit: 871a097181aa7f6136638d9f0a9e7095e32ef29f
Parents: 0353fa4
Author: Mikael St�ldal <mi...@staldal.nu>
Authored: Sun Aug 21 16:47:20 2016 +0200
Committer: Mikael St�ldal <mi...@staldal.nu>
Committed: Sun Aug 21 16:47:20 2016 +0200

----------------------------------------------------------------------
 .../org/apache/logging/log4j/util/Strings.java  | 63 ++++++++++++++++++++
 .../core/config/AbstractConfiguration.java      |  3 +-
 2 files changed, 65 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/871a0971/log4j-api/src/main/java/org/apache/logging/log4j/util/Strings.java
----------------------------------------------------------------------
diff --git a/log4j-api/src/main/java/org/apache/logging/log4j/util/Strings.java b/log4j-api/src/main/java/org/apache/logging/log4j/util/Strings.java
index 294b771..747bed4 100644
--- a/log4j-api/src/main/java/org/apache/logging/log4j/util/Strings.java
+++ b/log4j-api/src/main/java/org/apache/logging/log4j/util/Strings.java
@@ -16,7 +16,9 @@
  */
 package org.apache.logging.log4j.util;
 
+import java.util.Iterator;
 import java.util.Locale;
+import java.util.Objects;
 
 /**
  * <em>Consider this class private.</em>
@@ -166,4 +168,65 @@ public final class Strings {
         final String ts = str == null ? null : str.trim();
         return isEmpty(ts) ? null : ts;
     }
+
+    /**
+     * <p>Joins the elements of the provided {@code Iterable} into
+     * a single String containing the provided elements.</p>
+     *
+     * <p>No delimiter is added before or after the list. Null objects or empty
+     * strings within the iteration are represented by empty strings.</p>
+     *
+     * @param iterable  the {@code Iterable} providing the values to join together, may be null
+     * @param separator  the separator character to use
+     * @return the joined String, {@code null} if null iterator input
+     */
+    public static String join(final Iterable<?> iterable, final char separator) {
+        if (iterable == null) {
+            return null;
+        }
+        return join(iterable.iterator(), separator);
+    }
+
+    /**
+     * <p>Joins the elements of the provided {@code Iterator} into
+     * a single String containing the provided elements.</p>
+     *
+     * <p>No delimiter is added before or after the list. Null objects or empty
+     * strings within the iteration are represented by empty strings.</p>
+     *
+     * @param iterator  the {@code Iterator} of values to join together, may be null
+     * @param separator  the separator character to use
+     * @return the joined String, {@code null} if null iterator input
+     */
+    public static String join(final Iterator<?> iterator, final char separator) {
+
+        // handle null, zero and one elements before building a buffer
+        if (iterator == null) {
+            return null;
+        }
+        if (!iterator.hasNext()) {
+            return EMPTY;
+        }
+        final Object first = iterator.next();
+        if (!iterator.hasNext()) {
+            return Objects.toString(first);
+        }
+
+        // two or more elements
+        final StringBuilder buf = new StringBuilder(256); // Java default is 16, probably too small
+        if (first != null) {
+            buf.append(first);
+        }
+
+        while (iterator.hasNext()) {
+            buf.append(separator);
+            final Object obj = iterator.next();
+            if (obj != null) {
+                buf.append(obj);
+            }
+        }
+
+        return buf.toString();
+    }
+
 }

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/871a0971/log4j-core/src/main/java/org/apache/logging/log4j/core/config/AbstractConfiguration.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/config/AbstractConfiguration.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/AbstractConfiguration.java
index f123991..d89b8f5 100644
--- a/log4j-core/src/main/java/org/apache/logging/log4j/core/config/AbstractConfiguration.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/AbstractConfiguration.java
@@ -46,6 +46,7 @@ import org.apache.logging.log4j.core.util.NameUtil;
 import org.apache.logging.log4j.core.util.NanoClock;
 import org.apache.logging.log4j.core.util.WatchManager;
 import org.apache.logging.log4j.util.PropertiesUtil;
+import org.apache.logging.log4j.util.Strings;
 
 import javax.xml.stream.XMLOutputFactory;
 import javax.xml.stream.XMLStreamException;
@@ -236,7 +237,7 @@ public abstract class AbstractConfiguration extends AbstractFilterable implement
         }
         */
         if (!getPluginPackages().isEmpty()) {
-            xmlWriter.writeAttribute("packages", getPluginPackages().toString()); // TODO comma-separated string
+            xmlWriter.writeAttribute("packages", Strings.join(getPluginPackages(), ','));
         }
         if (!isShutdownHookEnabled()) {
             xmlWriter.writeAttribute("shutdownHook", "disable");