Repository: logging-log4j2 Updated Branches: refs/heads/release-2.x 6a04c4c0d -> 797435b51
[LOG4J2-2351] Added AbstractLogEvent.getMutableInstant The MutableInstant may be modified by classes extending AbstractLogEvent. Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/797435b5 Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/797435b5 Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/797435b5 Branch: refs/heads/release-2.x Commit: 797435b51f21715a47dee63f761605f61d00e43d Parents: 6a04c4c Author: Carter Kozak <cko...@apache.org> Authored: Tue Jun 12 10:35:20 2018 -0400 Committer: Carter Kozak <cko...@apache.org> Committed: Wed Jun 13 08:15:29 2018 -0400 ---------------------------------------------------------------------- .../org/apache/logging/log4j/core/AbstractLogEvent.java | 9 ++++++++- src/changes/changes.xml | 3 +++ 2 files changed, 11 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/797435b5/log4j-core/src/main/java/org/apache/logging/log4j/core/AbstractLogEvent.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/AbstractLogEvent.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/AbstractLogEvent.java index b9dd2bb..f1e6aed 100644 --- a/log4j-core/src/main/java/org/apache/logging/log4j/core/AbstractLogEvent.java +++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/AbstractLogEvent.java @@ -37,7 +37,7 @@ public abstract class AbstractLogEvent implements LogEvent { private static final long serialVersionUID = 1L; - private MutableInstant instant = new MutableInstant(); + private volatile MutableInstant instant; /** * Subclasses should implement this method to provide an immutable version. @@ -127,6 +127,13 @@ public abstract class AbstractLogEvent implements LogEvent { @Override public Instant getInstant() { + return getMutableInstant(); + } + + protected final MutableInstant getMutableInstant() { + if (instant == null) { + instant = new MutableInstant(); + } return instant; } http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/797435b5/src/changes/changes.xml ---------------------------------------------------------------------- diff --git a/src/changes/changes.xml b/src/changes/changes.xml index d63db38..c513dc7 100644 --- a/src/changes/changes.xml +++ b/src/changes/changes.xml @@ -102,6 +102,9 @@ <action issue="LOG4J2-2347" dev="ggregory" type="fix"> Update Apache Commons Compress from 1.16.1 to 1.17. </action> + <action issue="LOG4J2-2351" dev="ckozak" type="update"> + Added AbstractLogEvent.getMutableInstant to allow the MutableInstant instance to be modified by classes extending AbstractLogEvent. + </action> </release> <release version="2.11.0" date="2018-03-11" description="GA Release 2.11.0"> <action issue="LOG4J2-2104" dev="rgoers" type="fix">