You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@logging.apache.org by ma...@apache.org on 2014/08/03 22:28:54 UTC
svn commit: r1615449 -
/logging/log4j/log4j2/trunk/log4j-core/src/main/java/org/apache/logging/log4j/core/impl/Log4jLogEvent.java
Author: mattsicker
Date: Sun Aug 3 20:28:53 2014
New Revision: 1615449
URL: http://svn.apache.org/r1615449
Log:
Add LogEvent builder.
Modified:
logging/log4j/log4j2/trunk/log4j-core/src/main/java/org/apache/logging/log4j/core/impl/Log4jLogEvent.java
Modified: logging/log4j/log4j2/trunk/log4j-core/src/main/java/org/apache/logging/log4j/core/impl/Log4jLogEvent.java
URL: http://svn.apache.org/viewvc/logging/log4j/log4j2/trunk/log4j-core/src/main/java/org/apache/logging/log4j/core/impl/Log4jLogEvent.java?rev=1615449&r1=1615448&r2=1615449&view=diff
==============================================================================
--- logging/log4j/log4j2/trunk/log4j-core/src/main/java/org/apache/logging/log4j/core/impl/Log4jLogEvent.java (original)
+++ logging/log4j/log4j2/trunk/log4j-core/src/main/java/org/apache/logging/log4j/core/impl/Log4jLogEvent.java Sun Aug 3 20:28:53 2014
@@ -58,6 +58,55 @@ public class Log4jLogEvent implements Lo
private boolean includeLocation;
private boolean endOfBatch = false;
+ public static class Builder implements org.apache.logging.log4j.core.util.Builder<LogEvent> {
+
+ private String loggerFqcn;
+ private Marker marker;
+ private Level level;
+ private String loggerName;
+ private Message message;
+ private Throwable thrown;
+
+ public Builder setLoggerFqcn(String loggerFqcn) {
+ this.loggerFqcn = loggerFqcn;
+ return this;
+ }
+
+ public Builder setMarker(Marker marker) {
+ this.marker = marker;
+ return this;
+ }
+
+ public Builder setLevel(Level level) {
+ this.level = level;
+ return this;
+ }
+
+ public Builder setLoggerName(String loggerName) {
+ this.loggerName = loggerName;
+ return this;
+ }
+
+ public Builder setMessage(Message message) {
+ this.message = message;
+ return this;
+ }
+
+ public Builder setThrown(Throwable thrown) {
+ this.thrown = thrown;
+ return this;
+ }
+
+ @Override
+ public Log4jLogEvent build() {
+ return new Log4jLogEvent(loggerName, marker, loggerFqcn, level, message, thrown);
+ }
+ }
+
+ public static Builder newBuilder() {
+ return new Builder();
+ }
+
public Log4jLogEvent() {
this(clock.currentTimeMillis());
}