Repository: logging-log4j2 Updated Branches: refs/heads/master f39e39b88 -> c136d0d5a
LOG4J2-1683 Avoid allocating temporary objects in MapMessage Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/c136d0d5 Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/c136d0d5 Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/c136d0d5 Branch: refs/heads/master Commit: c136d0d5a34a6db2dd354ad4c8e31800182332fb Parents: f39e39b Author: rpopma <rpo...@apache.org> Authored: Mon Nov 21 01:44:57 2016 +0900 Committer: rpopma <rpo...@apache.org> Committed: Mon Nov 21 01:44:57 2016 +0900 ---------------------------------------------------------------------- .../org/apache/logging/log4j/message/MapMessage.java | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/c136d0d5/log4j-api/src/main/java/org/apache/logging/log4j/message/MapMessage.java ---------------------------------------------------------------------- diff --git a/log4j-api/src/main/java/org/apache/logging/log4j/message/MapMessage.java b/log4j-api/src/main/java/org/apache/logging/log4j/message/MapMessage.java index fd2227f..507f9c3 100644 --- a/log4j-api/src/main/java/org/apache/logging/log4j/message/MapMessage.java +++ b/log4j-api/src/main/java/org/apache/logging/log4j/message/MapMessage.java @@ -21,6 +21,7 @@ import java.util.Map; import java.util.TreeMap; import org.apache.logging.log4j.util.EnglishEnums; +import org.apache.logging.log4j.util.IndexedReadOnlyStringMap; import org.apache.logging.log4j.util.IndexedStringMap; import org.apache.logging.log4j.util.PerformanceSensitive; import org.apache.logging.log4j.util.SortedArrayStringMap; @@ -37,7 +38,7 @@ import org.apache.logging.log4j.util.Strings; * values. */ @PerformanceSensitive("allocation") -public class MapMessage implements MultiformatMessage, StringBuilderFormattable { +public class MapMessage implements MultiformatMessage, StringBuilderFormattable, AsynchronouslyFormattable { /** * When set as the format specifier causes the Map to be formatted as XML. @@ -122,6 +123,14 @@ public class MapMessage implements MultiformatMessage, StringBuilderFormattable } /** + * Returns a read-only view of the message data. + * @return the read-only message data. + */ + public IndexedReadOnlyStringMap getIndexedReadOnlyStringMap() { + return data; + } + + /** * Clear the data. */ public void clear() {