Add ConsoleAppender.getTarget(). Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/441b3933 Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/441b3933 Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/441b3933
Branch: refs/heads/LOG4J2-649 Commit: 441b393311bbbf832249099d6eaf907d9a6d1591 Parents: 85aed0c Author: ggregory <ggreg...@apache.org> Authored: Wed Dec 2 21:27:48 2015 -0800 Committer: ggregory <ggreg...@apache.org> Committed: Wed Dec 2 21:27:48 2015 -0800 ---------------------------------------------------------------------- .../logging/log4j/core/appender/ConsoleAppender.java | 15 +++++++++++---- .../log4j/core/appender/ConsoleAppenderTest.java | 4 +++- 2 files changed, 14 insertions(+), 5 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/441b3933/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/ConsoleAppender.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/ConsoleAppender.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/ConsoleAppender.java index 0466485..82a97d9 100644 --- a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/ConsoleAppender.java +++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/ConsoleAppender.java @@ -57,6 +57,8 @@ public final class ConsoleAppender extends AbstractOutputStreamAppender<OutputSt private static final Target DEFAULT_TARGET = Target.SYSTEM_OUT; private static final AtomicInteger COUNT = new AtomicInteger(); + private final Target target; + /** * Enumeration of console destinations. */ @@ -68,8 +70,9 @@ public final class ConsoleAppender extends AbstractOutputStreamAppender<OutputSt } private ConsoleAppender(final String name, final Layout<? extends Serializable> layout, final Filter filter, - final OutputStreamManager manager, final boolean ignoreExceptions) { + final OutputStreamManager manager, final boolean ignoreExceptions, Target target) { super(name, layout, filter, ignoreExceptions, true, manager); + this.target = target; } /** @@ -101,13 +104,13 @@ public final class ConsoleAppender extends AbstractOutputStreamAppender<OutputSt final boolean isFollow = Boolean.parseBoolean(follow); final boolean ignoreExceptions = Booleans.parseBoolean(ignore, true); final Target target = targetStr == null ? DEFAULT_TARGET : Target.valueOf(targetStr); - return new ConsoleAppender(name, layout, filter, getManager(target, isFollow, layout), ignoreExceptions); + return new ConsoleAppender(name, layout, filter, getManager(target, isFollow, layout), ignoreExceptions, target); } public static ConsoleAppender createDefaultAppenderForLayout(final Layout<? extends Serializable> layout) { // this method cannot use the builder class without introducing an infinite loop due to DefaultConfiguration return new ConsoleAppender("DefaultConsole-" + COUNT.incrementAndGet(), layout, null, - getDefaultManager(DEFAULT_TARGET, false, layout), true); + getDefaultManager(DEFAULT_TARGET, false, layout), true, DEFAULT_TARGET); } @PluginBuilderFactory @@ -173,7 +176,7 @@ public final class ConsoleAppender extends AbstractOutputStreamAppender<OutputSt @Override public ConsoleAppender build() { - return new ConsoleAppender(name, layout, filter, getManager(target, follow, layout), ignoreExceptions); + return new ConsoleAppender(name, layout, filter, getManager(target, follow, layout), ignoreExceptions, target); } } @@ -331,4 +334,8 @@ public final class ConsoleAppender extends AbstractOutputStreamAppender<OutputSt } } + public Target getTarget() { + return target; + } + } http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/441b3933/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 16417b9..317fc17 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 @@ -19,7 +19,6 @@ package org.apache.logging.log4j.core.appender; import static org.easymock.EasyMock.anyInt; import static org.easymock.EasyMock.anyObject; import static org.easymock.EasyMock.expectLastCall; - import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertTrue; @@ -37,10 +36,12 @@ import org.apache.logging.log4j.core.util.Constants; import org.apache.logging.log4j.message.SimpleMessage; import org.easymock.EasyMockSupport; import org.junit.AfterClass; +import org.junit.Assert; import org.junit.Before; import org.junit.BeforeClass; import org.junit.Test; + /** * */ @@ -133,6 +134,7 @@ public class ConsoleAppenderTest { private void testFollowSystemPrintStream(final PrintStream ps, final Target target, final SystemSetter systemSetter) { final ConsoleAppender app = ConsoleAppender.newBuilder().setTarget(target).setFollow(true) .setIgnoreExceptions(false).build(); + Assert.assertEquals(target, app.getTarget()); app.start(); try { final LogEvent event = Log4jLogEvent.newBuilder() //