Refactor acquisition of the "line.separator" system property to the API Util Strings class and reuse throughout Log4j. Replace odd code pattern that causes a FindBugs warning:
sb.append(String.format("}%n", "")); // yes, does not use args to apply %n with: sb.append('}'); sb.append(Strings.LINE_SEPARATOR); Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/732f8ecf Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/732f8ecf Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/732f8ecf Branch: refs/heads/master Commit: 732f8ecff1f333ca49f56774fca684cc117fedaa Parents: ff4afc6 Author: Gary Gregory <ggreg...@apache.org> Authored: Tue Sep 20 12:52:33 2016 -0700 Committer: Gary Gregory <ggreg...@apache.org> Committed: Tue Sep 20 12:52:33 2016 -0700 ---------------------------------------------------------------------- .../src/main/java/org/apache/log4j/Layout.java | 4 +- .../java/org/apache/log4j/CategoryTest.java | 3 +- .../org/apache/logging/log4j/util/Strings.java | 7 + .../log4j/core/impl/ThrowableFormatOptions.java | 3 +- .../logging/log4j/core/layout/HtmlLayout.java | 82 ++--- .../ExtendedThrowablePatternConverter.java | 6 +- .../pattern/LineSeparatorPatternConverter.java | 4 +- .../pattern/RootThrowablePatternConverter.java | 6 +- .../core/pattern/ThrowablePatternConverter.java | 5 +- .../logging/log4j/core/tools/Generate.java | 5 +- .../logging/log4j/core/util/Constants.java | 6 - .../log4j/core/GcFreeLoggingTestUtil.java | 14 +- .../apache/logging/log4j/core/HostNameTest.java | 4 +- .../logging/log4j/core/PatternSelectorTest.java | 16 +- .../core/appender/ConsoleAppenderTest.java | 4 +- .../core/appender/InMemoryAppenderTest.java | 4 +- .../core/impl/ThrowableFormatOptionsTest.java | 61 ++-- .../log4j/core/net/SocketReconnectTest.java | 12 +- .../core/pattern/MessageJansiConverterTest.java | 4 +- .../pattern/MessageStyledConverterTest.java | 4 +- .../log4j/core/pattern/NoConsoleNoAnsiTest.java | 4 +- .../log4j/core/pattern/PatternParserTest.java | 10 +- .../pattern/RegexReplacementConverterTest.java | 4 +- .../core/pattern/RegexReplacementTest.java | 6 +- .../log4j/core/pattern/StyleConverterTest.java | 4 +- .../logging/log4j/test/layout/BasicLayout.java | 6 +- .../apache/logging/log4j/jcl/LoggerTest.java | 130 +++---- .../ext/logging/log4j2/LoggingTest.java | 12 +- .../org/apache/logging/slf4j/LoggerTest.java | 364 +++++++++---------- .../org/apache/logging/slf4j/OptionalTest.java | 138 +++---- 30 files changed, 468 insertions(+), 464 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/732f8ecf/log4j-1.2-api/src/main/java/org/apache/log4j/Layout.java ---------------------------------------------------------------------- diff --git a/log4j-1.2-api/src/main/java/org/apache/log4j/Layout.java b/log4j-1.2-api/src/main/java/org/apache/log4j/Layout.java index a23e78e..2ef4b1c 100644 --- a/log4j-1.2-api/src/main/java/org/apache/log4j/Layout.java +++ b/log4j-1.2-api/src/main/java/org/apache/log4j/Layout.java @@ -17,7 +17,7 @@ package org.apache.log4j; import org.apache.log4j.spi.LoggingEvent; -import org.apache.logging.log4j.core.util.Constants; +import org.apache.logging.log4j.util.Strings; /** * @@ -25,7 +25,7 @@ import org.apache.logging.log4j.core.util.Constants; public abstract class Layout { /** Note that the line.separator property can be looked up even by applets. */ - public static final int LINE_SEP_LEN = Constants.LINE_SEPARATOR.length(); + public static final int LINE_SEP_LEN = Strings.LINE_SEPARATOR.length(); /** * Implement this method to create your own layout format. http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/732f8ecf/log4j-1.2-api/src/test/java/org/apache/log4j/CategoryTest.java ---------------------------------------------------------------------- diff --git a/log4j-1.2-api/src/test/java/org/apache/log4j/CategoryTest.java b/log4j-1.2-api/src/test/java/org/apache/log4j/CategoryTest.java index 3b8aec3..f671193 100644 --- a/log4j-1.2-api/src/test/java/org/apache/log4j/CategoryTest.java +++ b/log4j-1.2-api/src/test/java/org/apache/log4j/CategoryTest.java @@ -29,7 +29,6 @@ import org.apache.logging.log4j.core.LogEvent; import org.apache.logging.log4j.core.LoggerContext; import org.apache.logging.log4j.core.config.ConfigurationFactory; import org.apache.logging.log4j.core.layout.PatternLayout; -import org.apache.logging.log4j.core.util.Constants; import org.apache.logging.log4j.message.Message; import org.apache.logging.log4j.message.ObjectMessage; import org.apache.logging.log4j.test.appender.ListAppender; @@ -180,7 +179,7 @@ public class CategoryTest { final String msg = msgs.get(0); appender.clear(); final String threadName = Thread.currentThread().getName(); - final String expected = "ERROR o.a.l.CategoryTest [" + threadName + "] Test Message" + Constants.LINE_SEPARATOR; + final String expected = "ERROR o.a.l.CategoryTest [" + threadName + "] Test Message" + Strings.LINE_SEPARATOR; assertTrue("Incorrect message " + Strings.dquote(msg) + " expected " + Strings.dquote(expected), msg.endsWith(expected)); } http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/732f8ecf/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 747bed4..f6608d6 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 @@ -31,6 +31,13 @@ public final class Strings { * The empty string. */ public static final String EMPTY = ""; + + /** + * OS-dependent line separator, defaults to {@code "\n"} if the system property {@code ""line.separator"} cannot be + * read. + */ + public static final String LINE_SEPARATOR = PropertiesUtil.getProperties().getStringProperty("line.separator", + "\n"); private Strings() { // empty http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/732f8ecf/log4j-core/src/main/java/org/apache/logging/log4j/core/impl/ThrowableFormatOptions.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/impl/ThrowableFormatOptions.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/impl/ThrowableFormatOptions.java index b2be04d..d6bafca 100644 --- a/log4j-core/src/main/java/org/apache/logging/log4j/core/impl/ThrowableFormatOptions.java +++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/impl/ThrowableFormatOptions.java @@ -23,7 +23,6 @@ import java.util.Scanner; import org.apache.logging.log4j.core.pattern.JAnsiTextRenderer; import org.apache.logging.log4j.core.pattern.TextRenderer; import org.apache.logging.log4j.core.pattern.PlainTextRenderer; -import org.apache.logging.log4j.core.util.Constants; import org.apache.logging.log4j.core.util.Loader; import org.apache.logging.log4j.core.util.Patterns; import org.apache.logging.log4j.status.StatusLogger; @@ -98,7 +97,7 @@ public final class ThrowableFormatOptions { protected ThrowableFormatOptions(final int lines, final String separator, final List<String> ignorePackages, final TextRenderer textRenderer) { this.lines = lines; - this.separator = separator == null ? Constants.LINE_SEPARATOR : separator; + this.separator = separator == null ? Strings.LINE_SEPARATOR : separator; this.ignorePackages = ignorePackages; this.textRenderer = textRenderer == null ? PlainTextRenderer.getInstance() : textRenderer; } http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/732f8ecf/log4j-core/src/main/java/org/apache/logging/log4j/core/layout/HtmlLayout.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/layout/HtmlLayout.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/layout/HtmlLayout.java index 030a402..67593e6 100644 --- a/log4j-core/src/main/java/org/apache/logging/log4j/core/layout/HtmlLayout.java +++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/layout/HtmlLayout.java @@ -37,8 +37,8 @@ import org.apache.logging.log4j.core.config.plugins.PluginAttribute; import org.apache.logging.log4j.core.config.plugins.PluginBuilderAttribute; import org.apache.logging.log4j.core.config.plugins.PluginBuilderFactory; import org.apache.logging.log4j.core.config.plugins.PluginFactory; -import org.apache.logging.log4j.core.util.Constants; import org.apache.logging.log4j.core.util.Transform; +import org.apache.logging.log4j.util.Strings; /** * Outputs events as rows in an HTML table on an HTML page. @@ -56,7 +56,7 @@ public final class HtmlLayout extends AbstractStringLayout { public static final String DEFAULT_FONT_FAMILY = "arial,sans-serif"; private static final String TRACE_PREFIX = "<br /> "; - private static final String REGEXP = Constants.LINE_SEPARATOR.equals("\n") ? "\n" : Constants.LINE_SEPARATOR + "|\n"; + private static final String REGEXP = Strings.LINE_SEPARATOR.equals("\n") ? "\n" : Strings.LINE_SEPARATOR + "|\n"; private static final String DEFAULT_TITLE = "Log4j Log Messages"; private static final String DEFAULT_CONTENT_TYPE = "text/html"; @@ -141,16 +141,16 @@ public final class HtmlLayout extends AbstractStringLayout { public String toSerializable(final LogEvent event) { final StringBuilder sbuf = getStringBuilder(); - sbuf.append(Constants.LINE_SEPARATOR).append("<tr>").append(Constants.LINE_SEPARATOR); + sbuf.append(Strings.LINE_SEPARATOR).append("<tr>").append(Strings.LINE_SEPARATOR); sbuf.append("<td>"); sbuf.append(event.getTimeMillis() - jvmStartTime); - sbuf.append("</td>").append(Constants.LINE_SEPARATOR); + sbuf.append("</td>").append(Strings.LINE_SEPARATOR); final String escapedThread = Transform.escapeHtmlTags(event.getThreadName()); sbuf.append("<td title=\"").append(escapedThread).append(" thread\">"); sbuf.append(escapedThread); - sbuf.append("</td>").append(Constants.LINE_SEPARATOR); + sbuf.append("</td>").append(Strings.LINE_SEPARATOR); sbuf.append("<td title=\"Level\">"); if (event.getLevel().equals(Level.DEBUG)) { @@ -164,7 +164,7 @@ public final class HtmlLayout extends AbstractStringLayout { } else { sbuf.append(Transform.escapeHtmlTags(String.valueOf(event.getLevel()))); } - sbuf.append("</td>").append(Constants.LINE_SEPARATOR); + sbuf.append("</td>").append(Strings.LINE_SEPARATOR); String escapedLogger = Transform.escapeHtmlTags(event.getLoggerName()); if (escapedLogger.isEmpty()) { @@ -172,7 +172,7 @@ public final class HtmlLayout extends AbstractStringLayout { } sbuf.append("<td title=\"").append(escapedLogger).append(" logger\">"); sbuf.append(escapedLogger); - sbuf.append("</td>").append(Constants.LINE_SEPARATOR); + sbuf.append("</td>").append(Strings.LINE_SEPARATOR); if (locationInfo) { final StackTraceElement element = event.getSource(); @@ -180,20 +180,20 @@ public final class HtmlLayout extends AbstractStringLayout { sbuf.append(Transform.escapeHtmlTags(element.getFileName())); sbuf.append(':'); sbuf.append(element.getLineNumber()); - sbuf.append("</td>").append(Constants.LINE_SEPARATOR); + sbuf.append("</td>").append(Strings.LINE_SEPARATOR); } sbuf.append("<td title=\"Message\">"); sbuf.append(Transform.escapeHtmlTags(event.getMessage().getFormattedMessage()).replaceAll(REGEXP, "<br />")); - sbuf.append("</td>").append(Constants.LINE_SEPARATOR); - sbuf.append("</tr>").append(Constants.LINE_SEPARATOR); + sbuf.append("</td>").append(Strings.LINE_SEPARATOR); + sbuf.append("</tr>").append(Strings.LINE_SEPARATOR); if (event.getContextStack() != null && !event.getContextStack().isEmpty()) { sbuf.append("<tr><td bgcolor=\"#EEEEEE\" style=\"font-size : ").append(fontSize); sbuf.append(";\" colspan=\"6\" "); sbuf.append("title=\"Nested Diagnostic Context\">"); sbuf.append("NDC: ").append(Transform.escapeHtmlTags(event.getContextStack().toString())); - sbuf.append("</td></tr>").append(Constants.LINE_SEPARATOR); + sbuf.append("</td></tr>").append(Strings.LINE_SEPARATOR); } if (event.getContextMap() != null && !event.getContextMap().isEmpty()) { @@ -201,7 +201,7 @@ public final class HtmlLayout extends AbstractStringLayout { sbuf.append(";\" colspan=\"6\" "); sbuf.append("title=\"Mapped Diagnostic Context\">"); sbuf.append("MDC: ").append(Transform.escapeHtmlTags(event.getContextMap().toString())); - sbuf.append("</td></tr>").append(Constants.LINE_SEPARATOR); + sbuf.append("</td></tr>").append(Strings.LINE_SEPARATOR); } final Throwable throwable = event.getThrown(); @@ -209,7 +209,7 @@ public final class HtmlLayout extends AbstractStringLayout { sbuf.append("<tr><td bgcolor=\"#993300\" style=\"color:White; font-size : ").append(fontSize); sbuf.append(";\" colspan=\"6\">"); appendThrowableAsHtml(throwable, sbuf); - sbuf.append("</td></tr>").append(Constants.LINE_SEPARATOR); + sbuf.append("</td></tr>").append(Strings.LINE_SEPARATOR); } return sbuf.toString(); @@ -254,7 +254,7 @@ public final class HtmlLayout extends AbstractStringLayout { first = false; } sbuf.append(Transform.escapeHtmlTags(line)); - sbuf.append(Constants.LINE_SEPARATOR); + sbuf.append(Strings.LINE_SEPARATOR); } } @@ -267,36 +267,36 @@ public final class HtmlLayout extends AbstractStringLayout { final StringBuilder sbuf = new StringBuilder(); sbuf.append("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\" "); sbuf.append("\"http://www.w3.org/TR/html4/loose.dtd\">"); - sbuf.append(Constants.LINE_SEPARATOR); - sbuf.append("<html>").append(Constants.LINE_SEPARATOR); - sbuf.append("<head>").append(Constants.LINE_SEPARATOR); - sbuf.append("<meta charset=\"").append(getCharset()).append("\"/>").append(Constants.LINE_SEPARATOR); - sbuf.append("<title>").append(title).append("</title>").append(Constants.LINE_SEPARATOR); - sbuf.append("<style type=\"text/css\">").append(Constants.LINE_SEPARATOR); - sbuf.append("<!--").append(Constants.LINE_SEPARATOR); + sbuf.append(Strings.LINE_SEPARATOR); + sbuf.append("<html>").append(Strings.LINE_SEPARATOR); + sbuf.append("<head>").append(Strings.LINE_SEPARATOR); + sbuf.append("<meta charset=\"").append(getCharset()).append("\"/>").append(Strings.LINE_SEPARATOR); + sbuf.append("<title>").append(title).append("</title>").append(Strings.LINE_SEPARATOR); + sbuf.append("<style type=\"text/css\">").append(Strings.LINE_SEPARATOR); + sbuf.append("<!--").append(Strings.LINE_SEPARATOR); sbuf.append("body, table {font-family:").append(font).append("; font-size: "); - sbuf.append(headerSize).append(";}").append(Constants.LINE_SEPARATOR); - sbuf.append("th {background: #336699; color: #FFFFFF; text-align: left;}").append(Constants.LINE_SEPARATOR); - sbuf.append("-->").append(Constants.LINE_SEPARATOR); - sbuf.append("</style>").append(Constants.LINE_SEPARATOR); - sbuf.append("</head>").append(Constants.LINE_SEPARATOR); - sbuf.append("<body bgcolor=\"#FFFFFF\" topmargin=\"6\" leftmargin=\"6\">").append(Constants.LINE_SEPARATOR); - sbuf.append("<hr size=\"1\" noshade=\"noshade\">").append(Constants.LINE_SEPARATOR); - sbuf.append("Log session start time " + new java.util.Date() + "<br>").append(Constants.LINE_SEPARATOR); - sbuf.append("<br>").append(Constants.LINE_SEPARATOR); + sbuf.append(headerSize).append(";}").append(Strings.LINE_SEPARATOR); + sbuf.append("th {background: #336699; color: #FFFFFF; text-align: left;}").append(Strings.LINE_SEPARATOR); + sbuf.append("-->").append(Strings.LINE_SEPARATOR); + sbuf.append("</style>").append(Strings.LINE_SEPARATOR); + sbuf.append("</head>").append(Strings.LINE_SEPARATOR); + sbuf.append("<body bgcolor=\"#FFFFFF\" topmargin=\"6\" leftmargin=\"6\">").append(Strings.LINE_SEPARATOR); + sbuf.append("<hr size=\"1\" noshade=\"noshade\">").append(Strings.LINE_SEPARATOR); + sbuf.append("Log session start time " + new java.util.Date() + "<br>").append(Strings.LINE_SEPARATOR); + sbuf.append("<br>").append(Strings.LINE_SEPARATOR); sbuf.append( "<table cellspacing=\"0\" cellpadding=\"4\" border=\"1\" bordercolor=\"#224466\" width=\"100%\">"); - sbuf.append(Constants.LINE_SEPARATOR); - sbuf.append("<tr>").append(Constants.LINE_SEPARATOR); - sbuf.append("<th>Time</th>").append(Constants.LINE_SEPARATOR); - sbuf.append("<th>Thread</th>").append(Constants.LINE_SEPARATOR); - sbuf.append("<th>Level</th>").append(Constants.LINE_SEPARATOR); - sbuf.append("<th>Logger</th>").append(Constants.LINE_SEPARATOR); + sbuf.append(Strings.LINE_SEPARATOR); + sbuf.append("<tr>").append(Strings.LINE_SEPARATOR); + sbuf.append("<th>Time</th>").append(Strings.LINE_SEPARATOR); + sbuf.append("<th>Thread</th>").append(Strings.LINE_SEPARATOR); + sbuf.append("<th>Level</th>").append(Strings.LINE_SEPARATOR); + sbuf.append("<th>Logger</th>").append(Strings.LINE_SEPARATOR); if (locationInfo) { - sbuf.append("<th>File:Line</th>").append(Constants.LINE_SEPARATOR); + sbuf.append("<th>File:Line</th>").append(Strings.LINE_SEPARATOR); } - sbuf.append("<th>Message</th>").append(Constants.LINE_SEPARATOR); - sbuf.append("</tr>").append(Constants.LINE_SEPARATOR); + sbuf.append("<th>Message</th>").append(Strings.LINE_SEPARATOR); + sbuf.append("</tr>").append(Strings.LINE_SEPARATOR); return sbuf.toString().getBytes(getCharset()); } @@ -307,8 +307,8 @@ public final class HtmlLayout extends AbstractStringLayout { @Override public byte[] getFooter() { final StringBuilder sbuf = new StringBuilder(); - sbuf.append("</table>").append(Constants.LINE_SEPARATOR); - sbuf.append("<br>").append(Constants.LINE_SEPARATOR); + sbuf.append("</table>").append(Strings.LINE_SEPARATOR); + sbuf.append("<br>").append(Strings.LINE_SEPARATOR); sbuf.append("</body></html>"); return getBytes(sbuf.toString()); } http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/732f8ecf/log4j-core/src/main/java/org/apache/logging/log4j/core/pattern/ExtendedThrowablePatternConverter.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/pattern/ExtendedThrowablePatternConverter.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/pattern/ExtendedThrowablePatternConverter.java index 20fd733..229490b 100644 --- a/log4j-core/src/main/java/org/apache/logging/log4j/core/pattern/ExtendedThrowablePatternConverter.java +++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/pattern/ExtendedThrowablePatternConverter.java @@ -19,7 +19,7 @@ package org.apache.logging.log4j.core.pattern; import org.apache.logging.log4j.core.LogEvent; import org.apache.logging.log4j.core.config.plugins.Plugin; import org.apache.logging.log4j.core.impl.ThrowableProxy; -import org.apache.logging.log4j.core.util.Constants; +import org.apache.logging.log4j.util.Strings; /** * Outputs the Throwable portion of the LoggingEvent as a full stack trace @@ -70,9 +70,9 @@ public final class ExtendedThrowablePatternConverter extends ThrowablePatternCon if (len > 0 && !Character.isWhitespace(toAppendTo.charAt(len - 1))) { toAppendTo.append(' '); } - if (!options.allLines() || !Constants.LINE_SEPARATOR.equals(options.getSeparator())) { + if (!options.allLines() || !Strings.LINE_SEPARATOR.equals(options.getSeparator())) { final StringBuilder sb = new StringBuilder(); - final String[] array = extStackTrace.split(Constants.LINE_SEPARATOR); + final String[] array = extStackTrace.split(Strings.LINE_SEPARATOR); final int limit = options.minLines(array.length) - 1; for (int i = 0; i <= limit; ++i) { sb.append(array[i]); http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/732f8ecf/log4j-core/src/main/java/org/apache/logging/log4j/core/pattern/LineSeparatorPatternConverter.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/pattern/LineSeparatorPatternConverter.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/pattern/LineSeparatorPatternConverter.java index 6d41bf9..47c3f5a 100644 --- a/log4j-core/src/main/java/org/apache/logging/log4j/core/pattern/LineSeparatorPatternConverter.java +++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/pattern/LineSeparatorPatternConverter.java @@ -18,7 +18,7 @@ package org.apache.logging.log4j.core.pattern; import org.apache.logging.log4j.core.LogEvent; import org.apache.logging.log4j.core.config.plugins.Plugin; -import org.apache.logging.log4j.core.util.Constants; +import org.apache.logging.log4j.util.Strings; /** * Formats a line separator. @@ -42,7 +42,7 @@ public final class LineSeparatorPatternConverter extends LogEventPatternConverte */ private LineSeparatorPatternConverter() { super("Line Sep", "lineSep"); - lineSep = Constants.LINE_SEPARATOR; + lineSep = Strings.LINE_SEPARATOR; } /** http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/732f8ecf/log4j-core/src/main/java/org/apache/logging/log4j/core/pattern/RootThrowablePatternConverter.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/pattern/RootThrowablePatternConverter.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/pattern/RootThrowablePatternConverter.java index b9f0b7a..56389a6 100644 --- a/log4j-core/src/main/java/org/apache/logging/log4j/core/pattern/RootThrowablePatternConverter.java +++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/pattern/RootThrowablePatternConverter.java @@ -19,7 +19,7 @@ package org.apache.logging.log4j.core.pattern; import org.apache.logging.log4j.core.LogEvent; import org.apache.logging.log4j.core.config.plugins.Plugin; import org.apache.logging.log4j.core.impl.ThrowableProxy; -import org.apache.logging.log4j.core.util.Constants; +import org.apache.logging.log4j.util.Strings; /** * Outputs the Throwable portion of the LoggingEvent as a full stack trace @@ -70,9 +70,9 @@ public final class RootThrowablePatternConverter extends ThrowablePatternConvert if (len > 0 && !Character.isWhitespace(toAppendTo.charAt(len - 1))) { toAppendTo.append(' '); } - if (!options.allLines() || !Constants.LINE_SEPARATOR.equals(options.getSeparator())) { + if (!options.allLines() || !Strings.LINE_SEPARATOR.equals(options.getSeparator())) { final StringBuilder sb = new StringBuilder(); - final String[] array = trace.split(Constants.LINE_SEPARATOR); + final String[] array = trace.split(Strings.LINE_SEPARATOR); final int limit = options.minLines(array.length) - 1; for (int i = 0; i <= limit; ++i) { sb.append(array[i]); http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/732f8ecf/log4j-core/src/main/java/org/apache/logging/log4j/core/pattern/ThrowablePatternConverter.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/pattern/ThrowablePatternConverter.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/pattern/ThrowablePatternConverter.java index a651ae6..a746130 100644 --- a/log4j-core/src/main/java/org/apache/logging/log4j/core/pattern/ThrowablePatternConverter.java +++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/pattern/ThrowablePatternConverter.java @@ -22,7 +22,6 @@ import java.io.StringWriter; import org.apache.logging.log4j.core.LogEvent; import org.apache.logging.log4j.core.config.plugins.Plugin; import org.apache.logging.log4j.core.impl.ThrowableFormatOptions; -import org.apache.logging.log4j.core.util.Constants; import org.apache.logging.log4j.util.Strings; @@ -141,9 +140,9 @@ public class ThrowablePatternConverter extends LogEventPatternConverter { if (len > 0 && !Character.isWhitespace(buffer.charAt(len - 1))) { buffer.append(' '); } - if (!options.allLines() || !Constants.LINE_SEPARATOR.equals(options.getSeparator())) { + if (!options.allLines() || !Strings.LINE_SEPARATOR.equals(options.getSeparator())) { final StringBuilder sb = new StringBuilder(); - final String[] array = w.toString().split(Constants.LINE_SEPARATOR); + final String[] array = w.toString().split(Strings.LINE_SEPARATOR); final int limit = options.minLines(array.length) - 1; for (int i = 0; i <= limit; ++i) { sb.append(array[i]); http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/732f8ecf/log4j-core/src/main/java/org/apache/logging/log4j/core/tools/Generate.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/tools/Generate.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/tools/Generate.java index b1ca676..50feef1 100644 --- a/log4j-core/src/main/java/org/apache/logging/log4j/core/tools/Generate.java +++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/tools/Generate.java @@ -22,6 +22,8 @@ import java.util.ArrayList; import java.util.Arrays; import java.util.List; +import org.apache.logging.log4j.util.Strings; + /** * Generates source code for custom or extended logger wrappers. * <p> @@ -1094,7 +1096,8 @@ public final class Generate { sb.append(String.format(phase2, "")); } - sb.append(String.format("}%n", "")); // yes, does not use args to apply %n + sb.append('}'); + sb.append(Strings.LINE_SEPARATOR); return sb.toString(); } http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/732f8ecf/log4j-core/src/main/java/org/apache/logging/log4j/core/util/Constants.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/util/Constants.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/util/Constants.java index 0b841eb..aa8b74d 100644 --- a/log4j-core/src/main/java/org/apache/logging/log4j/core/util/Constants.java +++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/util/Constants.java @@ -44,12 +44,6 @@ public final class Constants { public static final String JNDI_CONTEXT_NAME = "java:comp/env/log4j/context-name"; /** - * Line separator. - */ - public static final String LINE_SEPARATOR = PropertiesUtil.getProperties().getStringProperty("line.separator", - "\n"); - - /** * Number of milliseconds in a second. */ public static final int MILLIS_IN_SECONDS = 1000; http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/732f8ecf/log4j-core/src/test/java/org/apache/logging/log4j/core/GcFreeLoggingTestUtil.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/GcFreeLoggingTestUtil.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/GcFreeLoggingTestUtil.java index 1d57c2d..aa6801a 100644 --- a/log4j-core/src/test/java/org/apache/logging/log4j/core/GcFreeLoggingTestUtil.java +++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/GcFreeLoggingTestUtil.java @@ -16,6 +16,10 @@ */ package org.apache.logging.log4j.core; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertTrue; + import java.io.File; import java.net.URL; import java.nio.charset.Charset; @@ -23,14 +27,15 @@ import java.nio.file.Files; import java.util.List; import java.util.concurrent.atomic.AtomicBoolean; -import org.apache.logging.log4j.*; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.MarkerManager; +import org.apache.logging.log4j.ThreadContext; import org.apache.logging.log4j.core.util.Constants; +import org.apache.logging.log4j.util.Strings; import com.google.monitoring.runtime.instrumentation.AllocationRecorder; import com.google.monitoring.runtime.instrumentation.Sampler; -import static org.junit.Assert.*; - /** * Utily methods for the GC-free logging tests.s. */ @@ -135,10 +140,9 @@ public class GcFreeLoggingTestUtil { assertEquals(text, "FATAL o.a.l.l.c." + className + " [main] value1 {aKey=value1, key2=value2, prop1=value1, prop2=value2} This message is logged to the console", lines.get(0)); - final String LINESEP = System.getProperty("line.separator"); for (int i = 1; i < lines.size(); i++) { final String line = lines.get(i); - assertFalse(i + ": " + line + LINESEP + text, line.contains("allocated") || line.contains("array")); + assertFalse(i + ": " + line + Strings.LINE_SEPARATOR + text, line.contains("allocated") || line.contains("array")); } } http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/732f8ecf/log4j-core/src/test/java/org/apache/logging/log4j/core/HostNameTest.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/HostNameTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/HostNameTest.java index ee56883..9d036ad 100644 --- a/log4j-core/src/test/java/org/apache/logging/log4j/core/HostNameTest.java +++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/HostNameTest.java @@ -19,10 +19,10 @@ package org.apache.logging.log4j.core; import java.util.List; import org.apache.logging.log4j.core.appender.RollingFileAppender; -import org.apache.logging.log4j.core.util.Constants; import org.apache.logging.log4j.core.util.NetUtils; import org.apache.logging.log4j.junit.LoggerContextRule; import org.apache.logging.log4j.test.appender.ListAppender; +import org.apache.logging.log4j.util.Strings; import org.junit.Before; import org.junit.ClassRule; import org.junit.Test; @@ -55,7 +55,7 @@ public class HostNameTest { testLogger.debug("Hello, {}", "World"); final List<String> msgs = host.getMessages(); assertThat(msgs, hasSize(1)); - String expected = NetUtils.getLocalHostname() + Constants.LINE_SEPARATOR; + String expected = NetUtils.getLocalHostname() + Strings.LINE_SEPARATOR; assertThat(msgs.get(0), endsWith(expected)); assertNotNull("No Host FileAppender file name", hostFile.getFileName()); expected = "target/" + NetUtils.getLocalHostname() + ".log"; http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/732f8ecf/log4j-core/src/test/java/org/apache/logging/log4j/core/PatternSelectorTest.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/PatternSelectorTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/PatternSelectorTest.java index 572ce4c..c1df3f8 100644 --- a/log4j-core/src/test/java/org/apache/logging/log4j/core/PatternSelectorTest.java +++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/PatternSelectorTest.java @@ -19,9 +19,9 @@ package org.apache.logging.log4j.core; import java.util.List; import org.apache.logging.log4j.LogManager; -import org.apache.logging.log4j.core.util.Constants; import org.apache.logging.log4j.junit.LoggerContextRule; import org.apache.logging.log4j.test.appender.ListAppender; +import org.apache.logging.log4j.util.Strings; import org.junit.ClassRule; import org.junit.Test; @@ -51,7 +51,7 @@ public class PatternSelectorTest { final String expect = String.format("[TRACE] TestMarkerPatternSelector ====== " + "o.a.l.l.c.PatternSelectorTest.testMarkerPatternSelector:43 Enter ======%n"); assertEquals(expect, messages.get(0)); - assertEquals("[INFO ] TestMarkerPatternSelector Hello World" + Constants.LINE_SEPARATOR, messages.get(1)); + assertEquals("[INFO ] TestMarkerPatternSelector Hello World" + Strings.LINE_SEPARATOR, messages.get(1)); app.clear(); } @@ -69,12 +69,12 @@ public class PatternSelectorTest { assertNotNull("No Messages", messages); assertTrue("Incorrect number of messages. Expected 4, Actual " + messages.size() + ": " + messages, messages.size() == 4); String expect = "[TRACE] TestScriptPatternSelector ====== " + - "o.a.l.l.c.PatternSelectorTest.testScriptPatternSelector:62 Enter ======" + Constants.LINE_SEPARATOR; + "o.a.l.l.c.PatternSelectorTest.testScriptPatternSelector:62 Enter ======" + Strings.LINE_SEPARATOR; assertEquals(expect, messages.get(0)); expect = "[INFO ] TestScriptPatternSelector o.a.l.l.c.PatternSelectorTest.testScriptPatternSelector.63 " + - "Hello World" + Constants.LINE_SEPARATOR; + "Hello World" + Strings.LINE_SEPARATOR; assertEquals(expect, messages.get(1)); - assertEquals("[INFO ] NoLocation No location information" + Constants.LINE_SEPARATOR, messages.get(2)); + assertEquals("[INFO ] NoLocation No location information" + Strings.LINE_SEPARATOR, messages.get(2)); app.clear(); } @@ -92,12 +92,12 @@ public class PatternSelectorTest { assertNotNull("No Messages", messages); assertTrue("Incorrect number of messages. Expected 4, Actual " + messages.size() + ": " + messages, messages.size() == 4); String expect = "[TRACE] TestJavaScriptPatternSelector ====== " + - "o.a.l.l.c.PatternSelectorTest.testJavaScriptPatternSelector:85 Enter ======" + Constants.LINE_SEPARATOR; + "o.a.l.l.c.PatternSelectorTest.testJavaScriptPatternSelector:85 Enter ======" + Strings.LINE_SEPARATOR; assertEquals(expect, messages.get(0)); expect = "[INFO ] TestJavaScriptPatternSelector " + - "o.a.l.l.c.PatternSelectorTest.testJavaScriptPatternSelector.86 Hello World" + Constants.LINE_SEPARATOR; + "o.a.l.l.c.PatternSelectorTest.testJavaScriptPatternSelector.86 Hello World" + Strings.LINE_SEPARATOR; assertEquals(expect, messages.get(1)); - assertEquals("[INFO ] JavascriptNoLocation No location information" + Constants.LINE_SEPARATOR, messages.get(2)); + assertEquals("[INFO ] JavascriptNoLocation No location information" + Strings.LINE_SEPARATOR, messages.get(2)); app.clear(); } } http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/732f8ecf/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/ConsoleAppenderTest.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/ConsoleAppenderTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/ConsoleAppenderTest.java index 80d024d..87aef83 100644 --- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/ConsoleAppenderTest.java +++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/ConsoleAppenderTest.java @@ -25,8 +25,8 @@ import org.apache.logging.log4j.core.LogEvent; import org.apache.logging.log4j.core.appender.ConsoleAppender.Target; import org.apache.logging.log4j.core.impl.Log4jLogEvent; import org.apache.logging.log4j.core.layout.PatternLayout; -import org.apache.logging.log4j.core.util.Constants; import org.apache.logging.log4j.message.SimpleMessage; +import org.apache.logging.log4j.util.Strings; import org.easymock.EasyMockSupport; import org.junit.AfterClass; import org.junit.Assert; @@ -151,7 +151,7 @@ public class ConsoleAppenderTest { } final String msg = baos.toString(); assertNotNull("No message", msg); - assertTrue("Incorrect message: \"" + msg + "\"", msg.endsWith("Test" + Constants.LINE_SEPARATOR)); + assertTrue("Incorrect message: \"" + msg + "\"", msg.endsWith("Test" + Strings.LINE_SEPARATOR)); } finally { app.stop(); } http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/732f8ecf/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/InMemoryAppenderTest.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/InMemoryAppenderTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/InMemoryAppenderTest.java index d9446b7..75d4929 100644 --- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/InMemoryAppenderTest.java +++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/InMemoryAppenderTest.java @@ -21,9 +21,9 @@ import org.apache.logging.log4j.core.Layout; import org.apache.logging.log4j.core.LogEvent; import org.apache.logging.log4j.core.impl.Log4jLogEvent; import org.apache.logging.log4j.core.layout.PatternLayout; -import org.apache.logging.log4j.core.util.Constants; import org.apache.logging.log4j.message.SimpleMessage; import org.apache.logging.log4j.test.appender.InMemoryAppender; +import org.apache.logging.log4j.util.Strings; import org.junit.Test; import static org.junit.Assert.*; @@ -74,7 +74,7 @@ public class InMemoryAppenderTest { final String msg = app.toString(); assertNotNull("No message", msg); final String expectedHeader = header == null ? "" : header; - final String expected = expectedHeader + "Test" + Constants.LINE_SEPARATOR + "Test" + Constants.LINE_SEPARATOR; + final String expected = expectedHeader + "Test" + Strings.LINE_SEPARATOR + "Test" + Strings.LINE_SEPARATOR; assertTrue("Incorrect message: " + msg, msg.equals(expected)); app.stop(); assertFalse("Appender did not stop", app.isStarted()); http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/732f8ecf/log4j-core/src/test/java/org/apache/logging/log4j/core/impl/ThrowableFormatOptionsTest.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/impl/ThrowableFormatOptionsTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/impl/ThrowableFormatOptionsTest.java index fe1dc5e..091322b 100644 --- a/log4j-core/src/test/java/org/apache/logging/log4j/core/impl/ThrowableFormatOptionsTest.java +++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/impl/ThrowableFormatOptionsTest.java @@ -25,7 +25,6 @@ import java.util.Map; import org.apache.logging.log4j.core.pattern.JAnsiTextRenderer; import org.apache.logging.log4j.core.pattern.TextRenderer; -import org.apache.logging.log4j.core.util.Constants; import org.apache.logging.log4j.util.Strings; import org.fusesource.jansi.AnsiRenderer.Code; import org.junit.Assert; @@ -68,7 +67,7 @@ public final class ThrowableFormatOptionsTest { */ @Test public void testNull() { - test(null, Integer.MAX_VALUE, Constants.LINE_SEPARATOR, null); + test(null, Integer.MAX_VALUE, Strings.LINE_SEPARATOR, null); } /** @@ -76,7 +75,7 @@ public final class ThrowableFormatOptionsTest { */ @Test public void testEmpty() { - test(new String[] {}, Integer.MAX_VALUE, Constants.LINE_SEPARATOR, null); + test(new String[] {}, Integer.MAX_VALUE, Strings.LINE_SEPARATOR, null); } /** @@ -84,7 +83,7 @@ public final class ThrowableFormatOptionsTest { */ @Test public void testOneNullElement() { - test(new String[] { null }, Integer.MAX_VALUE, Constants.LINE_SEPARATOR, null); + test(new String[] { null }, Integer.MAX_VALUE, Strings.LINE_SEPARATOR, null); } /** @@ -92,7 +91,7 @@ public final class ThrowableFormatOptionsTest { */ @Test public void testOneEmptyElement() { - test(new String[] { "" }, Integer.MAX_VALUE, Constants.LINE_SEPARATOR, null); + test(new String[] { "" }, Integer.MAX_VALUE, Strings.LINE_SEPARATOR, null); } /** @@ -100,7 +99,7 @@ public final class ThrowableFormatOptionsTest { */ @Test public void testFull() { - test(new String[] { "full" }, Integer.MAX_VALUE, Constants.LINE_SEPARATOR, null); + test(new String[] { "full" }, Integer.MAX_VALUE, Strings.LINE_SEPARATOR, null); } /** @@ -109,7 +108,7 @@ public final class ThrowableFormatOptionsTest { @Test public void testFullAnsi() { final ThrowableFormatOptions tfo = test(new String[] { "full", "ansi" }, - Integer.MAX_VALUE, Constants.LINE_SEPARATOR, null); + Integer.MAX_VALUE, Strings.LINE_SEPARATOR, null); testFullAnsiEmptyConfig(tfo); } @@ -119,7 +118,7 @@ public final class ThrowableFormatOptionsTest { @Test public void testFullAnsiEmptyConfig() { final ThrowableFormatOptions tfo = test(new String[] { "full", "ansi()" }, - Integer.MAX_VALUE, Constants.LINE_SEPARATOR, null); + Integer.MAX_VALUE, Strings.LINE_SEPARATOR, null); testFullAnsiEmptyConfig(tfo); } @@ -140,7 +139,7 @@ public final class ThrowableFormatOptionsTest { @Test public void testFullAnsiWithCustomStyle() { final ThrowableFormatOptions tfo = test(new String[] { "full", "ansi(Warning=red)" }, - Integer.MAX_VALUE, Constants.LINE_SEPARATOR, null); + Integer.MAX_VALUE, Strings.LINE_SEPARATOR, null); final TextRenderer textRenderer = tfo.getTextRenderer(); Assert.assertNotNull(textRenderer); Assert.assertTrue(textRenderer instanceof JAnsiTextRenderer); @@ -155,7 +154,7 @@ public final class ThrowableFormatOptionsTest { @Test public void testFullAnsiWithCustomStyles() { final ThrowableFormatOptions tfo = test(new String[] { "full", "ansi(Warning=red Key=blue Value=cyan)" }, - Integer.MAX_VALUE, Constants.LINE_SEPARATOR, null); + Integer.MAX_VALUE, Strings.LINE_SEPARATOR, null); final TextRenderer textRenderer = tfo.getTextRenderer(); Assert.assertNotNull(textRenderer); Assert.assertTrue(textRenderer instanceof JAnsiTextRenderer); @@ -173,7 +172,7 @@ public final class ThrowableFormatOptionsTest { public void testFullAnsiWithCustomComplexStyles() { final ThrowableFormatOptions tfo = test( new String[] { "full", "ansi(Warning=red Key=blue,bg_red Value=cyan,bg_black,underline)" }, Integer.MAX_VALUE, - Constants.LINE_SEPARATOR, null); + Strings.LINE_SEPARATOR, null); final TextRenderer textRenderer = tfo.getTextRenderer(); Assert.assertNotNull(textRenderer); Assert.assertTrue(textRenderer instanceof JAnsiTextRenderer); @@ -189,7 +188,7 @@ public final class ThrowableFormatOptionsTest { */ @Test public void testNone() { - test(new String[] { "none" }, 0, Constants.LINE_SEPARATOR, null); + test(new String[] { "none" }, 0, Strings.LINE_SEPARATOR, null); } /** @@ -197,7 +196,7 @@ public final class ThrowableFormatOptionsTest { */ @Test public void testShort() { - test(new String[] { "short" }, 2, Constants.LINE_SEPARATOR, null); + test(new String[] { "short" }, 2, Strings.LINE_SEPARATOR, null); } /** @@ -205,7 +204,7 @@ public final class ThrowableFormatOptionsTest { */ @Test public void testDepth() { - test(new String[] { "10" }, 10, Constants.LINE_SEPARATOR, null); + test(new String[] { "10" }, 10, Strings.LINE_SEPARATOR, null); } /** @@ -229,8 +228,8 @@ public final class ThrowableFormatOptionsTest { */ @Test public void testSeparatorAsDefaultLineSeparator() { - test(new String[] { "separator(" + Constants.LINE_SEPARATOR + ')' }, Integer.MAX_VALUE, - Constants.LINE_SEPARATOR, null); + test(new String[] { "separator(" + Strings.LINE_SEPARATOR + ')' }, Integer.MAX_VALUE, + Strings.LINE_SEPARATOR, null); } /** @@ -278,7 +277,7 @@ public final class ThrowableFormatOptionsTest { */ @Test public void testFilters() { - test(new String[] { "filters(packages)" }, Integer.MAX_VALUE, Constants.LINE_SEPARATOR, + test(new String[] { "filters(packages)" }, Integer.MAX_VALUE, Strings.LINE_SEPARATOR, Arrays.asList("packages")); } @@ -287,7 +286,7 @@ public final class ThrowableFormatOptionsTest { */ @Test public void testFiltersAsEmpty() { - test(new String[] { "filters()" }, Integer.MAX_VALUE, Constants.LINE_SEPARATOR, null); + test(new String[] { "filters()" }, Integer.MAX_VALUE, Strings.LINE_SEPARATOR, null); } /** @@ -295,7 +294,7 @@ public final class ThrowableFormatOptionsTest { */ @Test public void testFiltersAsMultiplePackages() { - test(new String[] { "filters(package1,package2)" }, Integer.MAX_VALUE, Constants.LINE_SEPARATOR, + test(new String[] { "filters(package1,package2)" }, Integer.MAX_VALUE, Strings.LINE_SEPARATOR, Arrays.asList("package1", "package2")); } @@ -304,7 +303,7 @@ public final class ThrowableFormatOptionsTest { */ @Test public void testFullAndFilters() { - test(new String[] { "full", "filters(packages)" }, Integer.MAX_VALUE, Constants.LINE_SEPARATOR, + test(new String[] { "full", "filters(packages)" }, Integer.MAX_VALUE, Strings.LINE_SEPARATOR, Arrays.asList("packages")); } @@ -313,7 +312,7 @@ public final class ThrowableFormatOptionsTest { */ @Test public void testNoneAndFilters() { - test(new String[] { "none", "filters(packages)" }, 0, Constants.LINE_SEPARATOR, Arrays.asList("packages")); + test(new String[] { "none", "filters(packages)" }, 0, Strings.LINE_SEPARATOR, Arrays.asList("packages")); } /** @@ -321,7 +320,7 @@ public final class ThrowableFormatOptionsTest { */ @Test public void testShortAndFilters() { - test(new String[] { "short", "filters(packages)" }, 2, Constants.LINE_SEPARATOR, Arrays.asList("packages")); + test(new String[] { "short", "filters(packages)" }, 2, Strings.LINE_SEPARATOR, Arrays.asList("packages")); } /** @@ -329,7 +328,7 @@ public final class ThrowableFormatOptionsTest { */ @Test public void testDepthAndFilters() { - test(new String[] { "10", "filters(packages)" }, 10, Constants.LINE_SEPARATOR, Arrays.asList("packages")); + test(new String[] { "10", "filters(packages)" }, 10, Strings.LINE_SEPARATOR, Arrays.asList("packages")); } /** @@ -370,7 +369,7 @@ public final class ThrowableFormatOptionsTest { */ @Test public void testSingleOptionFullAndFilters() { - test(new String[] { "full,filters(packages)" }, Integer.MAX_VALUE, Constants.LINE_SEPARATOR, + test(new String[] { "full,filters(packages)" }, Integer.MAX_VALUE, Strings.LINE_SEPARATOR, Arrays.asList("packages")); } @@ -379,7 +378,7 @@ public final class ThrowableFormatOptionsTest { */ @Test public void testSingleOptionNoneAndFilters() { - test(new String[] { "none,filters(packages)" }, 0, Constants.LINE_SEPARATOR, Arrays.asList("packages")); + test(new String[] { "none,filters(packages)" }, 0, Strings.LINE_SEPARATOR, Arrays.asList("packages")); } /** @@ -387,7 +386,7 @@ public final class ThrowableFormatOptionsTest { */ @Test public void testSingleOptionShortAndFilters() { - test(new String[] { "short,filters(packages)" }, 2, Constants.LINE_SEPARATOR, Arrays.asList("packages")); + test(new String[] { "short,filters(packages)" }, 2, Strings.LINE_SEPARATOR, Arrays.asList("packages")); } /** @@ -395,7 +394,7 @@ public final class ThrowableFormatOptionsTest { */ @Test public void testSingleOptionDepthAndFilters() { - test(new String[] { "10,filters(packages)" }, 10, Constants.LINE_SEPARATOR, Arrays.asList("packages")); + test(new String[] { "10,filters(packages)" }, 10, Strings.LINE_SEPARATOR, Arrays.asList("packages")); } /** @@ -403,7 +402,7 @@ public final class ThrowableFormatOptionsTest { */ @Test public void testSingleOptionFullAndMultipleFilters() { - test(new String[] { "full,filters(package1,package2)" }, Integer.MAX_VALUE, Constants.LINE_SEPARATOR, + test(new String[] { "full,filters(package1,package2)" }, Integer.MAX_VALUE, Strings.LINE_SEPARATOR, Arrays.asList("package1", "package2")); } @@ -412,7 +411,7 @@ public final class ThrowableFormatOptionsTest { */ @Test public void testSingleOptionNoneAndMultipleFilters() { - test(new String[] { "none,filters(package1,package2)" }, 0, Constants.LINE_SEPARATOR, + test(new String[] { "none,filters(package1,package2)" }, 0, Strings.LINE_SEPARATOR, Arrays.asList("package1", "package2")); } @@ -421,7 +420,7 @@ public final class ThrowableFormatOptionsTest { */ @Test public void testSingleOptionShortAndMultipleFilters() { - test(new String[] { "short,filters(package1,package2)" }, 2, Constants.LINE_SEPARATOR, + test(new String[] { "short,filters(package1,package2)" }, 2, Strings.LINE_SEPARATOR, Arrays.asList("package1", "package2")); } @@ -430,7 +429,7 @@ public final class ThrowableFormatOptionsTest { */ @Test public void testSingleOptionDepthAndMultipleFilters() { - test(new String[] { "10,filters(package1,package2)" }, 10, Constants.LINE_SEPARATOR, + test(new String[] { "10,filters(package1,package2)" }, 10, Strings.LINE_SEPARATOR, Arrays.asList("package1", "package2")); } } http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/732f8ecf/log4j-core/src/test/java/org/apache/logging/log4j/core/net/SocketReconnectTest.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/net/SocketReconnectTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/net/SocketReconnectTest.java index e586f7b..151d444 100644 --- a/log4j-core/src/test/java/org/apache/logging/log4j/core/net/SocketReconnectTest.java +++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/net/SocketReconnectTest.java @@ -25,9 +25,9 @@ import java.util.List; import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.core.appender.AppenderLoggingException; -import org.apache.logging.log4j.core.util.Constants; import org.apache.logging.log4j.junit.LoggerContextRule; import org.apache.logging.log4j.test.AvailablePortFinder; +import org.apache.logging.log4j.util.Strings; import org.junit.ClassRule; import org.junit.Ignore; import org.junit.Test; @@ -40,11 +40,11 @@ public class SocketReconnectTest { private static final String CONFIG = "log4j-socket.xml"; - private static final String SHUTDOWN = "Shutdown" + Constants.LINE_SEPARATOR + - "................................................................" + Constants.LINE_SEPARATOR + - "................................................................" + Constants.LINE_SEPARATOR + - "................................................................" + Constants.LINE_SEPARATOR + - "................................................................" + Constants.LINE_SEPARATOR; + private static final String SHUTDOWN = "Shutdown" + Strings.LINE_SEPARATOR + + "................................................................" + Strings.LINE_SEPARATOR + + "................................................................" + Strings.LINE_SEPARATOR + + "................................................................" + Strings.LINE_SEPARATOR + + "................................................................" + Strings.LINE_SEPARATOR; @ClassRule public static LoggerContextRule context = new LoggerContextRule(CONFIG); http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/732f8ecf/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/MessageJansiConverterTest.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/MessageJansiConverterTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/MessageJansiConverterTest.java index ec3603c..0134dac 100644 --- a/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/MessageJansiConverterTest.java +++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/MessageJansiConverterTest.java @@ -19,9 +19,9 @@ package org.apache.logging.log4j.core.pattern; import java.util.List; import org.apache.logging.log4j.Logger; -import org.apache.logging.log4j.core.util.Constants; import org.apache.logging.log4j.junit.LoggerContextRule; import org.apache.logging.log4j.test.appender.ListAppender; +import org.apache.logging.log4j.util.Strings; import org.junit.Before; import org.junit.Rule; import org.junit.Test; @@ -34,7 +34,7 @@ import static org.junit.Assert.*; public class MessageJansiConverterTest { private static final String EXPECTED = "\u001B[31;1mWarning!\u001B[m Pants on \u001B[31mfire!\u001B[m" - + Constants.LINE_SEPARATOR; + + Strings.LINE_SEPARATOR; @Rule public LoggerContextRule init = new LoggerContextRule("log4j-message-ansi.xml"); http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/732f8ecf/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/MessageStyledConverterTest.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/MessageStyledConverterTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/MessageStyledConverterTest.java index ec5ad20..ade4432 100644 --- a/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/MessageStyledConverterTest.java +++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/MessageStyledConverterTest.java @@ -19,9 +19,9 @@ package org.apache.logging.log4j.core.pattern; import java.util.List; import org.apache.logging.log4j.Logger; -import org.apache.logging.log4j.core.util.Constants; import org.apache.logging.log4j.junit.LoggerContextRule; import org.apache.logging.log4j.test.appender.ListAppender; +import org.apache.logging.log4j.util.Strings; import org.junit.Before; import org.junit.Rule; import org.junit.Test; @@ -34,7 +34,7 @@ import static org.junit.Assert.*; public class MessageStyledConverterTest { private static final String EXPECTED = "\u001B[31;1mWarning!\u001B[m Pants on \u001B[31;1mfire!\u001B[m" - + Constants.LINE_SEPARATOR; + + Strings.LINE_SEPARATOR; @Rule public LoggerContextRule init = new LoggerContextRule("log4j-message-styled.xml"); http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/732f8ecf/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/NoConsoleNoAnsiTest.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/NoConsoleNoAnsiTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/NoConsoleNoAnsiTest.java index 394fd70..cc9ac03 100644 --- a/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/NoConsoleNoAnsiTest.java +++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/NoConsoleNoAnsiTest.java @@ -19,9 +19,9 @@ package org.apache.logging.log4j.core.pattern; import java.util.List; import org.apache.logging.log4j.Logger; -import org.apache.logging.log4j.core.util.Constants; import org.apache.logging.log4j.junit.LoggerContextRule; import org.apache.logging.log4j.test.appender.ListAppender; +import org.apache.logging.log4j.util.Strings; import org.junit.Before; import org.junit.Rule; import org.junit.Test; @@ -34,7 +34,7 @@ public class NoConsoleNoAnsiTest { private static final String EXPECTED = "ERROR LoggerTest o.a.l.l.c.p.NoConsoleNoAnsiTest org.apache.logging.log4j.core.pattern.NoConsoleNoAnsiTest" - + Constants.LINE_SEPARATOR; + + Strings.LINE_SEPARATOR; @Rule public LoggerContextRule init = new LoggerContextRule("log4j2-console-noConsoleNoAnsi.xml"); http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/732f8ecf/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/PatternParserTest.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/PatternParserTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/PatternParserTest.java index 4e1050d..1e4cd92 100644 --- a/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/PatternParserTest.java +++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/PatternParserTest.java @@ -29,10 +29,10 @@ import org.apache.logging.log4j.core.LoggerContext; import org.apache.logging.log4j.core.config.Configuration; import org.apache.logging.log4j.core.config.NullConfiguration; import org.apache.logging.log4j.core.impl.Log4jLogEvent; -import org.apache.logging.log4j.core.util.Constants; import org.apache.logging.log4j.core.util.DummyNanoClock; import org.apache.logging.log4j.core.util.SystemNanoClock; import org.apache.logging.log4j.message.SimpleMessage; +import org.apache.logging.log4j.util.Strings; import org.junit.Before; import org.junit.Test; @@ -114,7 +114,7 @@ public class PatternParserTest { formatter.format(event, buf); } final String str = buf.toString(); - final String expected = "INFO [PatternParserTest :100 ] - Hello, world" + Constants.LINE_SEPARATOR; + final String expected = "INFO [PatternParserTest :100 ] - Hello, world" + Strings.LINE_SEPARATOR; assertTrue("Expected to end with: " + expected + ". Actual: " + str, str.endsWith(expected)); } @@ -135,7 +135,7 @@ public class PatternParserTest { formatter.format(event, buf); } final String str = buf.toString(); - final String expected = "INFO rTest Hello, world" + Constants.LINE_SEPARATOR; + final String expected = "INFO rTest Hello, world" + Strings.LINE_SEPARATOR; assertTrue("Expected to end with: " + expected + ". Actual: " + str, str.endsWith(expected)); } @@ -156,7 +156,7 @@ public class PatternParserTest { formatter.format(event, buf); } final String str = buf.toString(); - final String expected = "INFO org.a Hello, world" + Constants.LINE_SEPARATOR; + final String expected = "INFO org.a Hello, world" + Strings.LINE_SEPARATOR; assertTrue("Expected to end with: " + expected + ". Actual: " + str, str.endsWith(expected)); } @@ -222,7 +222,7 @@ public class PatternParserTest { formatter.format(event, buf); } final String str = buf.toString(); - final String expectedEnd = String.format("] %-5s: Hello, world%s\u001B[m", level, Constants.LINE_SEPARATOR); + final String expectedEnd = String.format("] %-5s: Hello, world%s\u001B[m", level, Strings.LINE_SEPARATOR); assertTrue("Expected to start with: " + expectedStart + ". Actual: " + str, str.startsWith(expectedStart)); assertTrue("Expected to end with: \"" + expectedEnd + "\". Actual: \"" + str, str.endsWith(expectedEnd)); } http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/732f8ecf/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/RegexReplacementConverterTest.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/RegexReplacementConverterTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/RegexReplacementConverterTest.java index aa7fe1a..bf09eb4 100644 --- a/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/RegexReplacementConverterTest.java +++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/RegexReplacementConverterTest.java @@ -21,8 +21,8 @@ import org.apache.logging.log4j.ThreadContext; import org.apache.logging.log4j.core.LogEvent; import org.apache.logging.log4j.core.LoggerContext; import org.apache.logging.log4j.core.impl.Log4jLogEvent; -import org.apache.logging.log4j.core.util.Constants; import org.apache.logging.log4j.message.SimpleMessage; +import org.apache.logging.log4j.util.Strings; import org.junit.Test; import static org.junit.Assert.*; @@ -49,6 +49,6 @@ public class RegexReplacementConverterTest { options); converter.format(event, sb); assertEquals("org/apache/logging/log4j/core/pattern/RegexReplacementConverterTest This is a test" + - Constants.LINE_SEPARATOR, sb.toString()); + Strings.LINE_SEPARATOR, sb.toString()); } } http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/732f8ecf/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/RegexReplacementTest.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/RegexReplacementTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/RegexReplacementTest.java index 8d68d5c..f357111 100644 --- a/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/RegexReplacementTest.java +++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/RegexReplacementTest.java @@ -23,10 +23,10 @@ import static org.junit.Assert.assertTrue; import java.util.List; import org.apache.logging.log4j.ThreadContext; -import org.apache.logging.log4j.core.util.Constants; import org.apache.logging.log4j.junit.LoggerContextRule; import org.apache.logging.log4j.junit.ThreadContextMapRule; import org.apache.logging.log4j.test.appender.ListAppender; +import org.apache.logging.log4j.util.Strings; import org.junit.Before; import org.junit.ClassRule; import org.junit.Rule; @@ -40,7 +40,7 @@ public class RegexReplacementTest { private static ListAppender app; private static ListAppender app2; - private static final String EXPECTED = "/RegexReplacementTest" + Constants.LINE_SEPARATOR; + private static final String EXPECTED = "/RegexReplacementTest" + Strings.LINE_SEPARATOR; @ClassRule public static LoggerContextRule context = new LoggerContextRule(CONFIG); @@ -71,7 +71,7 @@ public class RegexReplacementTest { msgs = app.getMessages(); assertNotNull(msgs); assertEquals("Incorrect number of messages. Should be 1 is " + msgs.size(), 1, msgs.size()); - assertEquals("LoggerTest This is a test for Apache" + Constants.LINE_SEPARATOR, msgs.get(0)); + assertEquals("LoggerTest This is a test for Apache" + Strings.LINE_SEPARATOR, msgs.get(0)); } @Test public void testConverter() { http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/732f8ecf/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/StyleConverterTest.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/StyleConverterTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/StyleConverterTest.java index 9672367..42d20a0 100644 --- a/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/StyleConverterTest.java +++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/StyleConverterTest.java @@ -19,9 +19,9 @@ package org.apache.logging.log4j.core.pattern; import java.util.List; import org.apache.logging.log4j.Logger; -import org.apache.logging.log4j.core.util.Constants; import org.apache.logging.log4j.junit.LoggerContextRule; import org.apache.logging.log4j.test.appender.ListAppender; +import org.apache.logging.log4j.util.Strings; import org.junit.Before; import org.junit.Rule; import org.junit.Test; @@ -35,7 +35,7 @@ public class StyleConverterTest { private static final String EXPECTED = "\u001B[1;31mERROR\u001B[m \u001B[1;36mLoggerTest\u001B[m o.a.l.l.c.p.StyleConverterTest org.apache.logging.log4j.core.pattern.StyleConverterTest" - + Constants.LINE_SEPARATOR; + + Strings.LINE_SEPARATOR; @Rule public LoggerContextRule init = new LoggerContextRule("log4j-style.xml"); http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/732f8ecf/log4j-core/src/test/java/org/apache/logging/log4j/test/layout/BasicLayout.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/test/layout/BasicLayout.java b/log4j-core/src/test/java/org/apache/logging/log4j/test/layout/BasicLayout.java index 4bda27e..bc20a7e 100644 --- a/log4j-core/src/test/java/org/apache/logging/log4j/test/layout/BasicLayout.java +++ b/log4j-core/src/test/java/org/apache/logging/log4j/test/layout/BasicLayout.java @@ -23,7 +23,7 @@ import org.apache.logging.log4j.core.LogEvent; import org.apache.logging.log4j.core.config.plugins.Plugin; import org.apache.logging.log4j.core.config.plugins.PluginFactory; import org.apache.logging.log4j.core.layout.AbstractStringLayout; -import org.apache.logging.log4j.core.util.Constants; +import org.apache.logging.log4j.util.Strings; /** * @@ -31,7 +31,7 @@ import org.apache.logging.log4j.core.util.Constants; @Plugin(name = "BasicLayout", category = "Core", elementType = "layout", printObject = true) public class BasicLayout extends AbstractStringLayout { - private static final String HEADER = "Header" + Constants.LINE_SEPARATOR; + private static final String HEADER = "Header" + Strings.LINE_SEPARATOR; public BasicLayout(final Charset charset) { super(charset); @@ -44,7 +44,7 @@ public class BasicLayout extends AbstractStringLayout { @Override public String toSerializable(final LogEvent event) { - return event.getMessage().getFormattedMessage() + Constants.LINE_SEPARATOR; + return event.getMessage().getFormattedMessage() + Strings.LINE_SEPARATOR; } /** http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/732f8ecf/log4j-jcl/src/test/java/org/apache/logging/log4j/jcl/LoggerTest.java ---------------------------------------------------------------------- diff --git a/log4j-jcl/src/test/java/org/apache/logging/log4j/jcl/LoggerTest.java b/log4j-jcl/src/test/java/org/apache/logging/log4j/jcl/LoggerTest.java index 29de211..6cd8dd6 100644 --- a/log4j-jcl/src/test/java/org/apache/logging/log4j/jcl/LoggerTest.java +++ b/log4j-jcl/src/test/java/org/apache/logging/log4j/jcl/LoggerTest.java @@ -1,65 +1,65 @@ -/* - * 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.jcl; - -import java.util.List; - -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.apache.logging.log4j.core.util.Constants; -import org.apache.logging.log4j.junit.LoggerContextRule; -import org.apache.logging.log4j.test.appender.ListAppender; -import org.junit.ClassRule; -import org.junit.Test; - -import static org.hamcrest.Matchers.equalTo; -import static org.hamcrest.Matchers.hasSize; -import static org.junit.Assert.*; - -/** - * - */ -public class LoggerTest { - - private static final String CONFIG = "log4j-test1.xml"; - - @ClassRule - public static final LoggerContextRule context = new LoggerContextRule(CONFIG); - - @Test - public void testLog() { - final Log logger = LogFactory.getLog("LoggerTest"); - logger.debug("Test message"); - verify("List", "o.a.l.l.j.LoggerTest Test message MDC{}" + Constants.LINE_SEPARATOR); - logger.debug("Exception: " , new NullPointerException("Test")); - verify("List", "o.a.l.l.j.LoggerTest Exception: MDC{}" + Constants.LINE_SEPARATOR); - logger.info("Info Message"); - verify("List", "o.a.l.l.j.LoggerTest Info Message MDC{}" + Constants.LINE_SEPARATOR); - logger.info("Info Message {}"); - verify("List", "o.a.l.l.j.LoggerTest Info Message {} MDC{}" + Constants.LINE_SEPARATOR); - } - - private void verify(final String name, final String expected) { - final ListAppender listApp = context.getListAppender(name); - final List<String> events = listApp.getMessages(); - assertThat(events, hasSize(1)); - final String actual = events.get(0); - assertThat(actual, equalTo(expected)); - listApp.clear(); - } - -} +/* + * 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.jcl; + +import java.util.List; + +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; +import org.apache.logging.log4j.junit.LoggerContextRule; +import org.apache.logging.log4j.test.appender.ListAppender; +import org.apache.logging.log4j.util.Strings; +import org.junit.ClassRule; +import org.junit.Test; + +import static org.hamcrest.Matchers.equalTo; +import static org.hamcrest.Matchers.hasSize; +import static org.junit.Assert.*; + +/** + * + */ +public class LoggerTest { + + private static final String CONFIG = "log4j-test1.xml"; + + @ClassRule + public static final LoggerContextRule context = new LoggerContextRule(CONFIG); + + @Test + public void testLog() { + final Log logger = LogFactory.getLog("LoggerTest"); + logger.debug("Test message"); + verify("List", "o.a.l.l.j.LoggerTest Test message MDC{}" + Strings.LINE_SEPARATOR); + logger.debug("Exception: " , new NullPointerException("Test")); + verify("List", "o.a.l.l.j.LoggerTest Exception: MDC{}" + Strings.LINE_SEPARATOR); + logger.info("Info Message"); + verify("List", "o.a.l.l.j.LoggerTest Info Message MDC{}" + Strings.LINE_SEPARATOR); + logger.info("Info Message {}"); + verify("List", "o.a.l.l.j.LoggerTest Info Message {} MDC{}" + Strings.LINE_SEPARATOR); + } + + private void verify(final String name, final String expected) { + final ListAppender listApp = context.getListAppender(name); + final List<String> events = listApp.getMessages(); + assertThat(events, hasSize(1)); + final String actual = events.get(0); + assertThat(actual, equalTo(expected)); + listApp.clear(); + } + +} http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/732f8ecf/log4j-liquibase/src/test/java/liquibase/ext/logging/log4j2/LoggingTest.java ---------------------------------------------------------------------- diff --git a/log4j-liquibase/src/test/java/liquibase/ext/logging/log4j2/LoggingTest.java b/log4j-liquibase/src/test/java/liquibase/ext/logging/log4j2/LoggingTest.java index b2917ed..36d011c 100644 --- a/log4j-liquibase/src/test/java/liquibase/ext/logging/log4j2/LoggingTest.java +++ b/log4j-liquibase/src/test/java/liquibase/ext/logging/log4j2/LoggingTest.java @@ -24,8 +24,8 @@ import java.util.List; import liquibase.logging.Logger; -import org.apache.logging.log4j.core.util.Constants; import org.apache.logging.log4j.test.appender.ListAppender; +import org.apache.logging.log4j.util.Strings; import org.junit.After; import org.junit.BeforeClass; import org.junit.Test; @@ -46,31 +46,31 @@ public class LoggingTest { @Test public void debug() { logger.debug("Debug message"); - verify(NAME + " " + getClass().getName() + " DEBUG Debug message" + Constants.LINE_SEPARATOR); + verify(NAME + " " + getClass().getName() + " DEBUG Debug message" + Strings.LINE_SEPARATOR); } @Test public void info() { logger.info("Info message"); - verify(NAME + " " + getClass().getName() + " INFO Info message" + Constants.LINE_SEPARATOR); + verify(NAME + " " + getClass().getName() + " INFO Info message" + Strings.LINE_SEPARATOR); } @Test public void warning() { logger.warning("Warning message"); - verify(NAME + " " + getClass().getName() + " WARN Warning message" + Constants.LINE_SEPARATOR); + verify(NAME + " " + getClass().getName() + " WARN Warning message" + Strings.LINE_SEPARATOR); } @Test public void severe() { logger.severe("Severe message"); - verify(NAME + " " + getClass().getName() + " ERROR Severe message" + Constants.LINE_SEPARATOR); + verify(NAME + " " + getClass().getName() + " ERROR Severe message" + Strings.LINE_SEPARATOR); } @Test public void severeStacktrace() { logger.severe("Severe message with stacktrace", new RuntimeException("thrown error")); - verify(NAME + " " + getClass().getName() + " ERROR Severe message with stacktrace" + Constants.LINE_SEPARATOR + verify(NAME + " " + getClass().getName() + " ERROR Severe message with stacktrace" + Strings.LINE_SEPARATOR + "java.lang.RuntimeException: thrown error"); }