#2367 - Modify ebean-test to use its own logger adapter (not reuse the one from ebean-core)

This commit is contained in:
Rob Bygrave committed 2021-09-15 16:56:12 +12:00
1 parent 853a6a5c1d
commit 55bfd56574
4 files changed
+35 -10

No files matched your search

@@ -8,12 +8,10 @@ import java.util.List;
/**
* Capture the log messages (executed SQL) for testing.
*/
class CaptureLogger implements SpiLogger {
final class CaptureLogger implements SpiLogger {
private final SpiLogger wrapped;
private List<String> messages = new ArrayList<>();
private boolean active;
CaptureLogger(SpiLogger wrapped) {
@@ -2,7 +2,7 @@ package io.ebean.test;
import io.ebeaninternal.api.SpiLogger;
import io.ebeaninternal.api.SpiLoggerFactory;
import io.ebeaninternal.server.logger.DSpiLogger;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/**
@@ -15,11 +15,39 @@ public class CapturingLoggerFactory implements SpiLoggerFactory {
@Override
public SpiLogger create(String name) {
DSpiLogger logger = new DSpiLogger(LoggerFactory.getLogger(name));
SpiLogger logger = new LogAdapter(LoggerFactory.getLogger(name));
if (name.equals("io.ebean.SQL")) {
return LoggedSql.register(logger);
}
return logger;
}
private static final class LogAdapter implements SpiLogger {
private final Logger logger;
LogAdapter(Logger logger) {
this.logger = logger;
}
@Override
public boolean isDebug() {
return logger.isDebugEnabled();
}
@Override
public boolean isTrace() {
return logger.isTraceEnabled();
}
@Override
public void debug(String msg) {
logger.debug(msg);
}
@Override
public void trace(String msg) {
logger.trace(msg);
}
}
}
@@ -1,7 +1,6 @@
package io.ebean.test;
import io.ebeaninternal.api.SpiLogger;
import io.ebeaninternal.server.logger.DSpiLogger;
import java.util.List;
@@ -44,7 +43,7 @@ public class LoggedSql {
/**
* Internal use - register the logger for <code>io.ebean.SQL</code>.
*/
static SpiLogger register(DSpiLogger logger) {
static SpiLogger register(SpiLogger logger) {
if (sqlLogger == null) {
sqlLogger = new CaptureLogger(logger);
}