Skip to content

Commit

Permalink
changes to the LoggingEvent interface
Browse files Browse the repository at this point in the history
  • Loading branch information
ceki committed Apr 29, 2019
1 parent 1f3b872 commit c7b2218
Show file tree
Hide file tree
Showing 7 changed files with 91 additions and 76 deletions.
100 changes: 50 additions & 50 deletions slf4j-api/src/main/java/org/slf4j/event/DefaultLoggingEvent.java
Expand Up @@ -6,112 +6,112 @@
import org.slf4j.Logger;
import org.slf4j.Marker;

/**
* A default implementation of {@link LoggingEvent}.
*
* @author Ceki Gülcü
*
* @since 2.0.0
*/
public class DefaultLoggingEvent implements LoggingEvent {

Logger logger;
Level level;


String message;
List<Marker> markers;
List<Object> parameters;
List<Object> arguments;
List<KeyValuePair> keyValuePairs;

Throwable cause;
String threadName;
long timeStamp;


public DefaultLoggingEvent(Level level, Logger logger) {
this.logger = logger;
this.level = level;
}

public void addMarker(Marker marker) {
getMarkers().add(marker);
}

@Override
public List<Marker> getMarkers() {
if(markers == null) {
if (markers == null) {
markers = new ArrayList<>(5);
}
return markers;
}


public void addParameter(Object p) {
getParameters().add(p);

public void addArgument(Object p) {
getNonNullArguments().add(p);
}

private List<Object> getParameters() {

if(parameters == null) {
parameters = new ArrayList<>(5);
private List<Object> getNonNullArguments() {
if (arguments == null) {
arguments = new ArrayList<>(5);
}
return parameters;
return arguments;
}

@Override
public List<Object> getArguments() {
return arguments;
}

@Override
public Object[] getArgumentArray() {
if (arguments == null)
return null;
return arguments.toArray();
}

public void addKeyValue(String key, Object value) {
getKeyValuePairs().add(new KeyValuePair(key, value));
getNonnullKeyValuePairs().add(new KeyValuePair(key, value));
}


private List<KeyValuePair> getKeyValuePairs() {
if(keyValuePairs == null) {
private List<KeyValuePair> getNonnullKeyValuePairs() {
if (keyValuePairs == null) {
keyValuePairs = new ArrayList<>(4);
}
return keyValuePairs;
}


@Override
public List<KeyValuePair> getKeyValuePairs() {
return keyValuePairs;
}

public void setCause(Throwable cause) {
this.cause = cause;
}

@Override
public Level getLevel() {
return level;
}


public void setThreadName(String threadName) {
this.threadName = threadName;
}


@Override
public String getThreadName() {
return threadName;
}

@Override
public String getLoggerName() {
return logger.getName();
}



@Override
public String getMessage() {
// TODO Auto-generated method stub
return null;
return message;
}



@Override
public Object[] getArgumentArray() {
// TODO Auto-generated method stub
return null;
public Throwable getThrowable() {
return cause;
}

@Override
public long getTimeStamp() {
// TODO Auto-generated method stub
return 0;
public String getThreadName() {
return threadName;
}

@Override
public Throwable getThrowable() {
// TODO Auto-generated method stub
return null;
public long getTimeStamp() {
return timeStamp;
}

}
Expand Up @@ -33,7 +33,7 @@ private void recordEvent(Level level, Marker marker, String msg, Object[] args,
loggingEvent.setLevel(level);
loggingEvent.setLogger(logger);
loggingEvent.setLoggerName(name);
loggingEvent.setMarker(marker);
loggingEvent.addMarker(marker);
loggingEvent.setMessage(msg);
loggingEvent.setArgumentArray(args);
loggingEvent.setThrowable(throwable);
Expand Down
21 changes: 9 additions & 12 deletions slf4j-api/src/main/java/org/slf4j/event/LoggingEvent.java
Expand Up @@ -5,26 +5,23 @@
import org.slf4j.Marker;

/**
* The minimal interface sufficient for the restitution of data passed
* by the user to the SLF4J API.
*
* @author ceki
* @author Ceki G&uuml;lc&uuml;
* @since 1.7.15
*/
public interface LoggingEvent {

Level getLevel();

List<Marker> getMarkers();

String getLoggerName();

String getMessage();

String getThreadName();

List<Object> getArguments();
Object[] getArgumentArray();

long getTimeStamp();

List<Marker> getMarkers();
List<KeyValuePair> getKeyValuePairs();
Throwable getThrowable();

long getTimeStamp();
String getThreadName();
}
@@ -1,6 +1,7 @@
package org.slf4j.event;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

import org.slf4j.Marker;
Expand All @@ -15,6 +16,8 @@ public class SubstituteLoggingEvent implements LoggingEvent {
String threadName;
String message;
Object[] argArray;
List<KeyValuePair> keyValuePairList;

long timeStamp;
Throwable throwable;

Expand Down Expand Up @@ -69,6 +72,14 @@ public void setArgumentArray(Object[] argArray) {
this.argArray = argArray;
}

@Override
public List<Object> getArguments() {
if(argArray == null) {
return null;
}
return Arrays.asList(argArray);
}

public long getTimeStamp() {
return timeStamp;
}
Expand All @@ -92,4 +103,10 @@ public Throwable getThrowable() {
public void setThrowable(Throwable throwable) {
this.throwable = throwable;
}


@Override
public List<KeyValuePair> getKeyValuePairs() {
return keyValuePairList;
}
}
Expand Up @@ -14,7 +14,6 @@ public class DefaultLoggingEventBuilder implements LoggingEventBuilder {

public DefaultLoggingEventBuilder(Level level, Logger logger) {
logggingEvent = new DefaultLoggingEvent(level, logger);
logggingEvent.setThreadName(Thread.currentThread().getName());
}

/**
Expand All @@ -38,11 +37,17 @@ public LoggingEventBuilder setCause(Throwable cause) {
}

@Override
public LoggingEventBuilder addParameter(Object p) {
logggingEvent.addParameter(p);
public LoggingEventBuilder addArgument(Object p) {
logggingEvent.addArgument(p);
return this;
}


@Override
public LoggingEventBuilder addArgument(Supplier<Object> objectSupplier) {
logggingEvent.addArgument(objectSupplier.get());
return this;
}

@Override
public void log(String message) {

Expand All @@ -52,11 +57,7 @@ public void log(String message) {
public void log(Supplier<String> messageSupplier) {
}

@Override
public LoggingEventBuilder addParameter(Supplier<Object> objectSupplier) {
logggingEvent.addParameter(objectSupplier.get());
return this;
}


@Override
public LoggingEventBuilder addKeyValue(String key, Object value) {
Expand Down
Expand Up @@ -17,8 +17,8 @@ public interface LoggingEventBuilder {
LoggingEventBuilder setCause(Throwable cause);

LoggingEventBuilder addMarker(Marker marker);
LoggingEventBuilder addParameter(Object p);
LoggingEventBuilder addParameter(Supplier<Object> objectSupplier);
LoggingEventBuilder addArgument(Object p);
LoggingEventBuilder addArgument(Supplier<Object> objectSupplier);
LoggingEventBuilder addKeyValue(String key, Object value);
LoggingEventBuilder addKeyValue(String key, Supplier<Object> value);

Expand Down
Expand Up @@ -26,12 +26,12 @@ public LoggingEventBuilder addMarker(Marker marker) {
}

@Override
public LoggingEventBuilder addParameter(Object p) {
public LoggingEventBuilder addArgument(Object p) {
return singleton();
}

@Override
public LoggingEventBuilder addParameter(Supplier<Object> objectSupplier) {
public LoggingEventBuilder addArgument(Supplier<Object> objectSupplier) {
return singleton();
}

Expand Down

0 comments on commit c7b2218

Please sign in to comment.