Repository: logging-log4j2 Updated Branches: refs/heads/master e07c41fc7 -> e191b13c4
refactor #format into small methods with single responsibility Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/e191b13c Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/e191b13c Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/e191b13c Branch: refs/heads/master Commit: e191b13c4c9c9080b449a3e9379474525e2a4735 Parents: e07c41f Author: rpopma <rpo...@apache.org> Authored: Sun Feb 14 20:05:20 2016 +0900 Committer: rpopma <rpo...@apache.org> Committed: Sun Feb 14 20:05:20 2016 +0900 ---------------------------------------------------------------------- .../core/pattern/MessagePatternConverter.java | 40 ++++++++++++-------- 1 file changed, 25 insertions(+), 15 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/e191b13c/log4j-core/src/main/java/org/apache/logging/log4j/core/pattern/MessagePatternConverter.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/pattern/MessagePatternConverter.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/pattern/MessagePatternConverter.java index d0adc7f..ba6c6df 100644 --- a/log4j-core/src/main/java/org/apache/logging/log4j/core/pattern/MessagePatternConverter.java +++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/pattern/MessagePatternConverter.java @@ -29,8 +29,8 @@ import org.apache.logging.log4j.message.MultiformatMessage; @ConverterKeys({ "m", "msg", "message" }) public final class MessagePatternConverter extends LogEventPatternConverter { + private static final String NULL = "null"; private final String[] formats; - private final Configuration config; /** @@ -59,20 +59,30 @@ public final class MessagePatternConverter extends LogEventPatternConverter { */ @Override public void format(final LogEvent event, final StringBuilder toAppendTo) { - final Message msg = event.getMessage(); - if (msg != null) { - String result; - if (msg instanceof MultiformatMessage) { - result = ((MultiformatMessage) msg).getFormattedMessage(formats); - } else { - result = msg.getFormattedMessage(); - } - if (result != null) { - toAppendTo.append(config != null && result.contains("${") ? - config.getStrSubstitutor().replace(event, result) : result); - } else { - toAppendTo.append("null"); - } + final String result = messageString(event); + if (result == NULL) { + toAppendTo.append(NULL); + } else { + toAppendTo.append(replaceParams(event, result)); + } + } + + private String replaceParams(final LogEvent event, final String result) { + return config != null && result.contains("${") ? + config.getStrSubstitutor().replace(event, result) : result; + } + + private String messageString(final LogEvent event) { + return messageString(event.getMessage()); + } + + private String messageString(final Message msg) { + String result; + if (msg instanceof MultiformatMessage) { + result = ((MultiformatMessage) msg).getFormattedMessage(formats); + } else { + result = msg == null ? NULL : msg.getFormattedMessage(); } + return result; } }