From 2c8ae16179dfe2d690777abd8af02e9a8338bb0d Mon Sep 17 00:00:00 2001 From: rob Date: Tue, 14 Feb 2023 14:54:23 +1300 Subject: [PATCH] Update to use String format and Object varargs --- .../main/java/io/ebeaninternal/api/SpiLogger.java | 2 +- .../java/io/ebeaninternal/api/SpiTransaction.java | 11 +++++++---- .../io/ebeaninternal/api/SpiTransactionProxy.java | 12 ++++++------ .../main/java/io/ebeaninternal/api/SpiTxnLogger.java | 6 +++--- .../server/core/AbstractSqlQueryRequest.java | 3 +-- .../ebeaninternal/server/core/OrmQueryRequest.java | 4 ++-- .../server/core/PersistRequestBean.java | 10 +++++----- .../server/core/PersistRequestCallableSql.java | 2 +- .../server/core/PersistRequestOrmUpdate.java | 2 +- .../server/core/PersistRequestUpdateSql.java | 5 ++--- .../server/core/RelationalQueryRequest.java | 2 +- .../io/ebeaninternal/server/logger/DSpiLogger.java | 6 ++---- .../io/ebeaninternal/server/logger/DTxnLogger.java | 12 ++++++------ .../ebeaninternal/server/persist/BatchControl.java | 2 +- .../server/persist/DefaultPersister.java | 10 +++++----- .../server/persist/DeleteUnloadedForeignKeys.java | 2 +- .../ebeaninternal/server/persist/dml/DmlHandler.java | 9 ++++----- .../io/ebeaninternal/server/query/CQueryEngine.java | 9 ++++----- .../transaction/ImplicitReadOnlyTransaction.java | 10 +++++----- .../server/transaction/JdbcTransaction.java | 12 ++++++------ .../server/transaction/NoTransaction.java | 6 +++--- .../server/transaction/SavepointTransaction.java | 12 ++++++------ .../src/main/java/io/ebean/test/CaptureLogger.java | 7 ++++--- .../java/io/ebean/test/CapturingLoggerFactory.java | 6 ++---- .../EbeanServerFactory_ServerConfigStart_Test.java | 2 +- 25 files changed, 80 insertions(+), 84 deletions(-) diff --git a/ebean-core/src/main/java/io/ebeaninternal/api/SpiLogger.java b/ebean-core/src/main/java/io/ebeaninternal/api/SpiLogger.java index a2fafd796..b3507cd19 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/api/SpiLogger.java +++ b/ebean-core/src/main/java/io/ebeaninternal/api/SpiLogger.java @@ -17,6 +17,6 @@ public interface SpiLogger { /** * Log a debug level message. */ - void debug(String msg); + void debug(String msg, Object... args); } diff --git a/ebean-core/src/main/java/io/ebeaninternal/api/SpiTransaction.java b/ebean-core/src/main/java/io/ebeaninternal/api/SpiTransaction.java index d21dbd88d..a8acdb45a 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/api/SpiTransaction.java +++ b/ebean-core/src/main/java/io/ebeaninternal/api/SpiTransaction.java @@ -43,14 +43,17 @@ public interface SpiTransaction extends Transaction { /** * Log a message to the SQL logger. */ - void logSql(String... msg); + void logSql(String msg, Object... args); /** - * Log a message to the SUMMARY logger. + * Log a summary message to the SUMMARY logger. */ - void logSummary(String... msg); + void logSummary(String msg, Object... args); - void logTxn(String... args); + /** + * Log a transaction message to the transaction logger. + */ + void logTxn(String msg, Object... args); /** * Register a "Deferred Relationship" that requires an additional update later. diff --git a/ebean-core/src/main/java/io/ebeaninternal/api/SpiTransactionProxy.java b/ebean-core/src/main/java/io/ebeaninternal/api/SpiTransactionProxy.java index 12a242722..87c2f606a 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/api/SpiTransactionProxy.java +++ b/ebean-core/src/main/java/io/ebeaninternal/api/SpiTransactionProxy.java @@ -149,18 +149,18 @@ public abstract class SpiTransactionProxy implements SpiTransaction { } @Override - public void logSql(String... msg) { - transaction.logSql(msg); + public void logSql(String msg, Object... args) { + transaction.logSql(msg, args); } @Override - public void logSummary(String... msg) { - transaction.logSummary(msg); + public void logSummary(String msg, Object... args) { + transaction.logSummary(msg, args); } @Override - public void logTxn(String... args) { - transaction.logTxn(args); + public void logTxn(String msg, Object... args) { + transaction.logTxn(msg, args); } @Override diff --git a/ebean-core/src/main/java/io/ebeaninternal/api/SpiTxnLogger.java b/ebean-core/src/main/java/io/ebeaninternal/api/SpiTxnLogger.java index e1eb240c2..62fd51169 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/api/SpiTxnLogger.java +++ b/ebean-core/src/main/java/io/ebeaninternal/api/SpiTxnLogger.java @@ -20,17 +20,17 @@ public interface SpiTxnLogger { /** * Log a SQL message. */ - void sql(String[] msg); + void sql(String msg, Object... args); /** * Log a Summary message. */ - void sum(String[] msg); + void sum(String msg, Object... args); /** * Log a Transaction message. */ - void txn(String[] args); + void txn(String msg, Object... args); /** * Transaction Committed. diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/core/AbstractSqlQueryRequest.java b/ebean-core/src/main/java/io/ebeaninternal/server/core/AbstractSqlQueryRequest.java index 7dc041401..b4a0c5b20 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/core/AbstractSqlQueryRequest.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/core/AbstractSqlQueryRequest.java @@ -4,7 +4,6 @@ import io.ebean.CancelableQuery; import io.ebean.Transaction; import io.ebean.util.JdbcClose; import io.ebeaninternal.api.*; -import io.ebeaninternal.server.util.Str; import io.ebeaninternal.server.persist.Binder; import io.ebeaninternal.server.persist.TrimLogSql; import io.ebeaninternal.server.util.BindParamsParser; @@ -151,7 +150,7 @@ public abstract class AbstractSqlQueryRequest implements CancelableQuery { } if (isLogSql()) { long micros = (System.nanoTime() - startNano) / 1000L; - transaction.logSql(TrimLogSql.trim(sql), "; --bind(", bindLog, ") --micros(", String.valueOf(micros), ")"); + transaction.logSql("{0}; --bind({1}) --micros({2})", TrimLogSql.trim(sql), bindLog, micros); } } finally { lock.unlock(); diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/core/OrmQueryRequest.java b/ebean-core/src/main/java/io/ebeaninternal/server/core/OrmQueryRequest.java index 4a60a1755..3631968ba 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/core/OrmQueryRequest.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/core/OrmQueryRequest.java @@ -691,8 +691,8 @@ public final class OrmQueryRequest extends BeanRequest implements SpiOrmQuery /** * Log the SQL if the logLevel is appropriate. */ - public void logSql(String... sql) { - transaction.logSql(sql); + public void logSql(String msg, Object... args) { + transaction.logSql(msg, args); } /** diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/core/PersistRequestBean.java b/ebean-core/src/main/java/io/ebeaninternal/server/core/PersistRequestBean.java index 239bfa1a8..c176c3e90 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/core/PersistRequestBean.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/core/PersistRequestBean.java @@ -928,20 +928,20 @@ public final class PersistRequestBean extends PersistRequest implements BeanP } private void logSummaryMessage() { - String draft = (beanDescriptor.isDraftable() && !publish) ? "] draft[true]" : "]"; + String draft = (beanDescriptor.isDraftable() && !publish) ? " draft[true]" : ""; String name = beanDescriptor.name(); switch (type) { case INSERT: - transaction.logSummary("Inserted [" , name , "] [" , (idValue == null ? "" : idValue.toString()) , draft); + transaction.logSummary("Inserted [{0}] [{1}]{2}", name, (idValue == null ? "" : idValue), draft); break; case UPDATE: - transaction.logSummary("Updated [" , name , "] [" , idValue.toString() , draft); + transaction.logSummary("Updated [{0}] [{1}]{2}", name, idValue , draft); break; case DELETE: - transaction.logSummary("Deleted [" , name , "] [" , idValue.toString() , draft); + transaction.logSummary("Deleted [{0}] [{1}]{2}", name, idValue , draft); break; case DELETE_SOFT: - transaction.logSummary("SoftDelete [" , name , "] [" , idValue.toString() , draft); + transaction.logSummary("SoftDelete [{0}] [{1}]{2}", name, idValue , draft); break; default: break; diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/core/PersistRequestCallableSql.java b/ebean-core/src/main/java/io/ebeaninternal/server/core/PersistRequestCallableSql.java index 0bc8133df..217bb0e5c 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/core/PersistRequestCallableSql.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/core/PersistRequestCallableSql.java @@ -82,7 +82,7 @@ public final class PersistRequestCallableSql extends PersistRequest { persistExecute.collectSqlCall(label, startNanos); } if (transaction.isLogSummary()) { - transaction.logSummary("CallableSql label[", callableSql.getLabel(), "] rows[", String.valueOf(rowCount), "] bind[", bindLog, "]"); + transaction.logSummary("CallableSql label[{0}] rows[{1}] bind[{2}]", callableSql.getLabel(), rowCount, bindLog); } // register table modifications with the transaction event diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/core/PersistRequestOrmUpdate.java b/ebean-core/src/main/java/io/ebeaninternal/server/core/PersistRequestOrmUpdate.java index 9ddf0459d..7707be1db 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/core/PersistRequestOrmUpdate.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/core/PersistRequestOrmUpdate.java @@ -83,7 +83,7 @@ public final class PersistRequestOrmUpdate extends PersistRequest { OrmUpdateType ormUpdateType = ormUpdate.getOrmUpdateType(); String tableName = ormUpdate.getBaseTable(); if (transaction.isLogSummary()) { - transaction.logSummary(ormUpdateType.toString(), " table[", tableName, "] rows[", String.valueOf(rowCount), "] bind[", bindLog, "]"); + transaction.logSummary("{0} table[{1}] rows[{2}] bind[{3}]", ormUpdateType, tableName, rowCount, bindLog); } if (ormUpdate.isNotifyCache()) { // add the modification info to the TransactionEvent diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/core/PersistRequestUpdateSql.java b/ebean-core/src/main/java/io/ebeaninternal/server/core/PersistRequestUpdateSql.java index 6138e90af..f0b5f31fa 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/core/PersistRequestUpdateSql.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/core/PersistRequestUpdateSql.java @@ -3,7 +3,6 @@ package io.ebeaninternal.server.core; import io.ebeaninternal.api.SpiEbeanServer; import io.ebeaninternal.api.SpiSqlUpdate; import io.ebeaninternal.api.SpiTransaction; -import io.ebeaninternal.server.util.Str; import io.ebeaninternal.server.persist.BatchControl; import io.ebeaninternal.server.persist.PersistExecute; import io.ebeaninternal.server.persist.TrimLogSql; @@ -148,7 +147,7 @@ public final class PersistRequestUpdateSql extends PersistRequest { */ public void logSqlBatchBind() { if (transaction.isLogSql()) { - transaction.logSql(" -- bind(", bindLog, ")"); + transaction.logSql(" -- bind({0})", bindLog); } } @@ -161,7 +160,7 @@ public final class PersistRequestUpdateSql extends PersistRequest { persistExecute.collectSqlUpdate(label, startNanos); } if (transaction.isLogSql() && !batchThisRequest) { - transaction.logSql(TrimLogSql.trim(updateSql.getGeneratedSql()), "; -- bind(", bindLog, ") rows(", String.valueOf(rowCount), ")"); + transaction.logSql("{0}; -- bind({1}) rows({2})", TrimLogSql.trim(updateSql.getGeneratedSql()), bindLog, rowCount); } if (updateSql.isAutoTableMod()) { // add the modification info to the TransactionEvent diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/core/RelationalQueryRequest.java b/ebean-core/src/main/java/io/ebeaninternal/server/core/RelationalQueryRequest.java index b27b3ab2e..8b5002b45 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/core/RelationalQueryRequest.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/core/RelationalQueryRequest.java @@ -123,7 +123,7 @@ public final class RelationalQueryRequest extends AbstractSqlQueryRequest { public void logSummary() { if (transaction.isLogSummary()) { long micros = (System.nanoTime() - startNano) / 1000L; - transaction.logSummary("SqlQuery rows[", String.valueOf(rows), "] micros[", String.valueOf(micros), "] bind[", bindLog, "]"); + transaction.logSummary("SqlQuery rows[{0}] micros[{1}] bind[{2}]", rows, micros, bindLog); } } diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/logger/DSpiLogger.java b/ebean-core/src/main/java/io/ebeaninternal/server/logger/DSpiLogger.java index 341898ac1..f9713b407 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/logger/DSpiLogger.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/logger/DSpiLogger.java @@ -3,7 +3,6 @@ package io.ebeaninternal.server.logger; import io.ebeaninternal.api.SpiLogger; import static java.lang.System.Logger.Level.DEBUG; -import static java.lang.System.Logger.Level.TRACE; final class DSpiLogger implements SpiLogger { @@ -19,8 +18,7 @@ final class DSpiLogger implements SpiLogger { } @Override - public void debug(String msg) { - logger.log(DEBUG, msg); + public void debug(String msg, Object... args) { + logger.log(DEBUG, msg, args); } - } diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/logger/DTxnLogger.java b/ebean-core/src/main/java/io/ebeaninternal/server/logger/DTxnLogger.java index f71b4d7ce..5e498cae8 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/logger/DTxnLogger.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/logger/DTxnLogger.java @@ -36,18 +36,18 @@ final class DTxnLogger implements SpiTxnLogger { } @Override - public void sql(String[] msg) { - sql.debug(Str.add(logPrefix, msg)); + public void sql(String msg, Object... args) { + sql.debug(Str.add(logPrefix, msg), args); } @Override - public void sum(String[] msg) { - sum.debug(Str.add(logPrefix, msg)); + public void sum(String msg, Object... args) { + sum.debug(Str.add(logPrefix, msg), args); } @Override - public void txn(String[] msg) { - txn.debug(Str.add(logPrefix, msg)); + public void txn(String msg, Object... args) { + txn.debug(Str.add(logPrefix, msg), args); } @Override diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/persist/BatchControl.java b/ebean-core/src/main/java/io/ebeaninternal/server/persist/BatchControl.java index 2f721b369..10cd8f519 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/persist/BatchControl.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/persist/BatchControl.java @@ -313,7 +313,7 @@ public final class BatchControl { BatchedBeanHolder[] bsArray = beanHolderArray(); Arrays.sort(bsArray, depthComparator); if (transaction.isLogSummary()) { - transaction.logSummary("BatchControl flush " , Arrays.toString(bsArray)); + transaction.logSummary("BatchControl flush {0}", Arrays.toString(bsArray)); } for (BatchedBeanHolder beanHolder : bsArray) { beanHolder.executeNow(); diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/persist/DefaultPersister.java b/ebean-core/src/main/java/io/ebeaninternal/server/persist/DefaultPersister.java index ad9494b4a..97b6943ba 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/persist/DefaultPersister.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/persist/DefaultPersister.java @@ -672,7 +672,7 @@ public final class DefaultPersister implements Persister { if (idList != null) { q.where().idIn(idList); if (t.isLogSummary()) { - t.logSummary("-- DeleteById of ", descriptor.name(), " ids[", idList.toString(), "] requires fetch of foreign key values"); + t.logSummary("-- DeleteById of {0} ids[{1}] requires fetch of foreign key values", descriptor.name(), idList); } List beanList = server.findList(q, t); deleteCascade(beanList, t, deleteMode, false); @@ -681,7 +681,7 @@ public final class DefaultPersister implements Persister { } else { q.where().idEq(id); if (t.isLogSummary()) { - t.logSummary("-- DeleteById of ", descriptor.name(), " id[", String.valueOf(id), "] requires fetch of foreign key values"); + t.logSummary("-- DeleteById of {0} id[{1}] requires fetch of foreign key values", descriptor.name(), id); } EntityBean bean = (EntityBean) server.findOne(q, t); if (bean == null) { @@ -741,7 +741,7 @@ public final class DefaultPersister implements Persister { for (BeanPropertyAssocMany many : manys) { SqlUpdate sqlDelete = many.deleteByParentId(id, idList); if (t.isLogSummary()) { - t.logSummary("-- Deleting intersection table entries: ", many.fullName()); + t.logSummary("-- Deleting intersection table entries: {0}", many.fullName()); } executeSqlUpdate(sqlDelete, t); } @@ -751,9 +751,9 @@ public final class DefaultPersister implements Persister { SqlUpdate deleteById = descriptor.deleteById(id, idList, deleteMode); if (t.isLogSummary()) { if (idList != null) { - t.logSummary("-- Deleting ", descriptor.name(), " Ids: ", idList.toString()); + t.logSummary("-- Deleting {0} Ids: {1}", descriptor.name(), idList); } else { - t.logSummary("-- Deleting ", descriptor.name(), " Id: ", String.valueOf(id)); + t.logSummary("-- Deleting {0} Id: {1}", descriptor.name(), id); } } diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/persist/DeleteUnloadedForeignKeys.java b/ebean-core/src/main/java/io/ebeaninternal/server/persist/DeleteUnloadedForeignKeys.java index 847f7a343..ab935a09e 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/persist/DeleteUnloadedForeignKeys.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/persist/DeleteUnloadedForeignKeys.java @@ -69,7 +69,7 @@ final class DeleteUnloadedForeignKeys { SpiTransaction t = request.transaction(); if (t.isLogSummary()) { - t.logSummary("-- Ebean fetching foreign key values for delete of ", descriptor.name(), " id:", String.valueOf(id)); + t.logSummary("-- Ebean fetching foreign key values for delete of {0} id:{1}", descriptor.name(), id); } beanWithForeignKeys = (EntityBean) server.findOne(q, t); } diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/persist/dml/DmlHandler.java b/ebean-core/src/main/java/io/ebeaninternal/server/persist/dml/DmlHandler.java index 39ceedf4a..54d318a0a 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/persist/dml/DmlHandler.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/persist/dml/DmlHandler.java @@ -8,7 +8,6 @@ import io.ebeaninternal.server.persist.BatchedPstmt; import io.ebeaninternal.server.persist.BatchedPstmtHolder; import io.ebeaninternal.server.persist.dmlbind.BindableRequest; import io.ebeaninternal.server.bind.DataBind; -import io.ebeaninternal.server.util.Str; import javax.persistence.OptimisticLockException; import java.sql.Connection; @@ -102,7 +101,7 @@ public abstract class DmlHandler implements PersistHandler, BindableRequest { } catch (OptimisticLockException e) { // add the SQL and bind values to error message final String m = e.getMessage() + " sql[" + sql + "] bind[" + bindLog + "]"; - persistRequest.transaction().logSummary("OptimisticLockException:", m); + persistRequest.transaction().logSummary("OptimisticLockException:{0}", m); throw new OptimisticLockException(m, null, e.getEntity()); } } @@ -146,15 +145,15 @@ public abstract class DmlHandler implements PersistHandler, BindableRequest { switch (batchedStatus) { case BATCHED_FIRST: { transaction.logSql(sql); - transaction.logSql(" -- bind(", bindLog.toString(), ")"); + transaction.logSql(" -- bind({0})", bindLog); return; } case BATCHED: { - transaction.logSql(" -- bind(", bindLog.toString(), ")"); + transaction.logSql(" -- bind({0})", bindLog); return; } default: { - transaction.logSql(sql, "; -- bind(", bindLog.toString(), ")"); + transaction.logSql("{0}; -- bind({1})", sql, bindLog); } } } diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/query/CQueryEngine.java b/ebean-core/src/main/java/io/ebeaninternal/server/query/CQueryEngine.java index 7cc6e9b37..8a3307b8f 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/query/CQueryEngine.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/query/CQueryEngine.java @@ -18,7 +18,6 @@ import io.ebeaninternal.server.core.OrmQueryRequest; import io.ebeaninternal.server.core.SpiResultSet; import io.ebeaninternal.server.deploy.BeanDescriptor; import io.ebeaninternal.server.persist.Binder; -import io.ebeaninternal.server.util.Str; import javax.persistence.PersistenceException; import java.sql.ResultSet; @@ -73,7 +72,7 @@ public final class CQueryEngine { try { int rows = query.execute(); if (request.logSql()) { - request.logSql(query.generatedSql(), "; --bind(", query.bindLog(), ") --micros(", query.micros() + ") --rows(", rows + ")"); + request.logSql("{0}; --bind({1}) --micros({2}) --rows({3})", query.generatedSql(), query.bindLog(), query.micros(), rows); } return rows; } catch (SQLException e) { @@ -129,7 +128,7 @@ public final class CQueryEngine { SpiTransaction t = request.transaction(); if (t.isLogSummary()) { // log the error to the transaction log - t.logSummary("ERROR executing query, bindLog[", bindLog, "] error:", StringHelper.removeNewLines(e.getMessage())); + t.logSummary("ERROR executing query, bindLog[{0}] error:{1}", bindLog, StringHelper.removeNewLines(e.getMessage())); } // ensure 'rollback' is logged if queryOnly transaction t.connection(); @@ -147,7 +146,7 @@ public final class CQueryEngine { } private void logGeneratedSql(OrmQueryRequest request, String sql, String bindLog, long micros) { - request.logSql(sql, "; --bind(", bindLog, ") --micros(", micros + ")"); + request.logSql("{0}; --bind({1}) --micros({2})", sql, bindLog, micros); } /** @@ -403,7 +402,7 @@ public final class CQueryEngine { * Log the generated SQL to the transaction log. */ private void logSql(CQuery query) { - query.transaction().logSql(query.generatedSql(), "; --bind(", query.bindLog(), ") --micros(", String.valueOf(query.micros()), ")"); + query.transaction().logSql("{0}; --bind({1}) --micros({2})", query.generatedSql(), query.bindLog(), query.micros()); } /** diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/transaction/ImplicitReadOnlyTransaction.java b/ebean-core/src/main/java/io/ebeaninternal/server/transaction/ImplicitReadOnlyTransaction.java index ef959742d..f665662f6 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/transaction/ImplicitReadOnlyTransaction.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/transaction/ImplicitReadOnlyTransaction.java @@ -430,17 +430,17 @@ final class ImplicitReadOnlyTransaction implements SpiTransaction, TxnProfileEve } @Override - public void logSql(String... msg) { - logger.sql(msg); + public void logSql(String msg, Object... args) { + logger.sql(msg, args); } @Override - public void logSummary(String... msg) { - logger.sum(msg); + public void logSummary(String msg, Object... args) { + logger.sum(msg, args); } @Override - public void logTxn(String... args) { + public void logTxn(String msg, Object... args) { // never called } diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/transaction/JdbcTransaction.java b/ebean-core/src/main/java/io/ebeaninternal/server/transaction/JdbcTransaction.java index 4ebfd8082..a432a54d4 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/transaction/JdbcTransaction.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/transaction/JdbcTransaction.java @@ -714,18 +714,18 @@ class JdbcTransaction implements SpiTransaction, TxnProfileEventCodes { } @Override - public final void logSql(String... msg) { - logger.sql(msg); + public void logSql(String msg, Object... args) { + logger.sql(msg, args); } @Override - public final void logSummary(String... msg) { - logger.sum(msg); + public final void logSummary(String msg, Object... args) { + logger.sum(msg, args); } @Override - public void logTxn(String... args) { - logger.txn(args); + public void logTxn(String msg, Object... args) { + logger.txn(msg, args); } /** diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/transaction/NoTransaction.java b/ebean-core/src/main/java/io/ebeaninternal/server/transaction/NoTransaction.java index e5a0104a9..b0ee596df 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/transaction/NoTransaction.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/transaction/NoTransaction.java @@ -129,17 +129,17 @@ final class NoTransaction implements SpiTransaction { } @Override - public void logSql(String... msg) { + public void logSql(String msg, Object... args) { } @Override - public void logSummary(String... msg) { + public void logSummary(String msg, Object... args) { } @Override - public void logTxn(String... args) { + public void logTxn(String msg, Object... args) { } diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/transaction/SavepointTransaction.java b/ebean-core/src/main/java/io/ebeaninternal/server/transaction/SavepointTransaction.java index df4502983..b9e3f8b8a 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/server/transaction/SavepointTransaction.java +++ b/ebean-core/src/main/java/io/ebeaninternal/server/transaction/SavepointTransaction.java @@ -49,13 +49,13 @@ final class SavepointTransaction extends SpiTransactionProxy { } @Override - public void logSql(String... msg) { - transaction.logSql(Str.add(spPrefix, msg)); + public void logSql(String msg, Object... args) { + transaction.logSql(Str.add(spPrefix, msg), args); } @Override - public void logSummary(String... msg) { - transaction.logSummary(Str.add(spPrefix, msg)); + public void logSummary(String msg, Object... args) { + transaction.logSummary(Str.add(spPrefix, msg), args); } @Override @@ -92,7 +92,7 @@ final class SavepointTransaction extends SpiTransactionProxy { connection.releaseSavepoint(savepoint); state = STATE_COMMITTED; manager.notifyOfCommit(this); - transaction.logTxn(spPrefix, "commit"); + transaction.logTxn(spPrefix + "commit"); } catch (SQLException e) { throw new PersistenceException("Error trying to commit/release Savepoint", e); } @@ -103,7 +103,7 @@ final class SavepointTransaction extends SpiTransactionProxy { connection.rollback(savepoint); state = STATE_ROLLED_BACK; manager.notifyOfRollback(this, cause); - transaction.logTxn(spPrefix, "rollback");//TODO: Pass the cause + transaction.logTxn(spPrefix + "rollback");//TODO: Pass the cause } catch (SQLException e) { throw new PersistenceException("Error trying to rollback Savepoint", e); } diff --git a/ebean-test/src/main/java/io/ebean/test/CaptureLogger.java b/ebean-test/src/main/java/io/ebean/test/CaptureLogger.java index 6c6468570..b02413f91 100644 --- a/ebean-test/src/main/java/io/ebean/test/CaptureLogger.java +++ b/ebean-test/src/main/java/io/ebean/test/CaptureLogger.java @@ -2,6 +2,7 @@ package io.ebean.test; import io.ebeaninternal.api.SpiLogger; +import java.text.MessageFormat; import java.util.ArrayList; import java.util.List; @@ -24,11 +25,11 @@ final class CaptureLogger implements SpiLogger { } @Override - public void debug(String msg) { + public void debug(String msg, Object... args) { if (active) { - messages.add(msg); + messages.add(MessageFormat.format(msg, args)); } - wrapped.debug(msg); + wrapped.debug(msg, args); } List start() { diff --git a/ebean-test/src/main/java/io/ebean/test/CapturingLoggerFactory.java b/ebean-test/src/main/java/io/ebean/test/CapturingLoggerFactory.java index 1e56f87d0..25cce8abb 100644 --- a/ebean-test/src/main/java/io/ebean/test/CapturingLoggerFactory.java +++ b/ebean-test/src/main/java/io/ebean/test/CapturingLoggerFactory.java @@ -5,7 +5,6 @@ import io.ebeaninternal.api.SpiLogger; import io.ebeaninternal.api.SpiLoggerFactory; import static java.lang.System.Logger.Level.DEBUG; -import static java.lang.System.Logger.Level.TRACE; /** * Create a logger that captures the SQL and register it for later access in tests. @@ -38,9 +37,8 @@ public class CapturingLoggerFactory implements SpiLoggerFactory { } @Override - public void debug(String msg) { - logger.log(DEBUG, msg); + public void debug(String msg, Object... args) { + logger.log(DEBUG, msg, args); } - } } diff --git a/ebean-test/src/test/java/io/ebean/xtest/base/EbeanServerFactory_ServerConfigStart_Test.java b/ebean-test/src/test/java/io/ebean/xtest/base/EbeanServerFactory_ServerConfigStart_Test.java index f597705e7..841a552fa 100644 --- a/ebean-test/src/test/java/io/ebean/xtest/base/EbeanServerFactory_ServerConfigStart_Test.java +++ b/ebean-test/src/test/java/io/ebean/xtest/base/EbeanServerFactory_ServerConfigStart_Test.java @@ -35,7 +35,7 @@ public class EbeanServerFactory_ServerConfigStart_Test { } @Override - public void debug(String msg) { + public void debug(String msg, Object... args) { } };