From 303039735f1cbae070cced68706a64b2dddb3bc8 Mon Sep 17 00:00:00 2001 From: Robin Bygrave Date: Thu, 1 Apr 2021 23:04:22 +1300 Subject: [PATCH] Refactor rename transparentPersistence to autoPersistUpdates --- .../src/main/java/io/ebean/Transaction.java | 4 ++-- .../io/ebeaninternal/api/SpiTransaction.java | 4 ++-- .../ebeaninternal/api/SpiTransactionProxy.java | 8 ++++---- .../server/core/PersistRequestBean.java | 2 +- .../transaction/ImplicitReadOnlyTransaction.java | 4 ++-- .../server/transaction/JdbcTransaction.java | 16 ++++++++-------- .../server/transaction/NoTransaction.java | 4 ++-- .../TestTransparentPersist.java | 12 ++++++------ 8 files changed, 27 insertions(+), 27 deletions(-) diff --git a/ebean-api/src/main/java/io/ebean/Transaction.java b/ebean-api/src/main/java/io/ebean/Transaction.java index 0cbfd6e3c..9a391d654 100644 --- a/ebean-api/src/main/java/io/ebean/Transaction.java +++ b/ebean-api/src/main/java/io/ebean/Transaction.java @@ -60,12 +60,12 @@ public interface Transaction extends AutoCloseable { void register(TransactionCallback callback); /** - * EXPERIMENTAL - turn on transparent persistence and batchMode true. + * EXPERIMENTAL - turn on automatic persistence of dirty beans and batchMode true. *

* With this turned on beans that are dirty in the persistence context * are automatically persisted on flush() and commit(). */ - void setTransparentPersistence(boolean transparentPersistence); + void setAutoPersistUpdates(boolean autoPersistUpdates); /** * Set a label on the transaction. 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 8c520f79e..8c59fa7dc 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/api/SpiTransaction.java +++ b/ebean-core/src/main/java/io/ebeaninternal/api/SpiTransaction.java @@ -148,9 +148,9 @@ public interface SpiTransaction extends Transaction { int depth(); /** - * Return true if transparent persistence is turned on. + * Return true if dirty beans are automatically persisted. */ - boolean isTransparentPersistence(); + boolean isAutoPersistUpdates(); /** * Return true if this transaction was created explicitly via 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 1652b56f6..5fd2a3c6e 100644 --- a/ebean-core/src/main/java/io/ebeaninternal/api/SpiTransactionProxy.java +++ b/ebean-core/src/main/java/io/ebeaninternal/api/SpiTransactionProxy.java @@ -44,13 +44,13 @@ public abstract class SpiTransactionProxy implements SpiTransaction { } @Override - public void setTransparentPersistence(boolean transparentPersistence) { - transaction.setTransparentPersistence(transparentPersistence); + public void setAutoPersistUpdates(boolean autoPersistUpdates) { + transaction.setAutoPersistUpdates(autoPersistUpdates); } @Override - public boolean isTransparentPersistence() { - return transaction.isTransparentPersistence(); + public boolean isAutoPersistUpdates() { + return transaction.isAutoPersistUpdates(); } @Override 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 3f7d6e79a..31d92b0a0 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 @@ -1038,7 +1038,7 @@ public final class PersistRequestBean extends PersistRequest implements BeanP if (!publish) { beanDescriptor.setDraft(entityBean); } - if (transaction.isTransparentPersistence() && idValue != null) { + if (transaction.isAutoPersistUpdates() && idValue != null) { // with getGeneratedKeys off we will not have a idValue beanDescriptor.contextPut(transaction.getPersistenceContext(), idValue, entityBean); } 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 a94260fb6..5f2b5d195 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 @@ -96,12 +96,12 @@ class ImplicitReadOnlyTransaction implements SpiTransaction, TxnProfileEventCode } @Override - public void setTransparentPersistence(boolean transparentPersistence) { + public void setAutoPersistUpdates(boolean autoPersistUpdates) { // do nothing } @Override - public boolean isTransparentPersistence() { + public boolean isAutoPersistUpdates() { return false; } 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 411331aef..7d3b3ddf1 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 @@ -187,7 +187,7 @@ class JdbcTransaction implements SpiTransaction, TxnProfileEventCodes { private final long startNanos; - private boolean transparentPersistence; + private boolean autoPersistUpdates; /** * Create a new JdbcTransaction. @@ -211,7 +211,7 @@ class JdbcTransaction implements SpiTransaction, TxnProfileEventCodes { this.batchOnCascadeMode = false; this.onQueryOnly = OnQueryOnly.ROLLBACK; } else { - this.transparentPersistence = explicit && manager.isAutoPersistUpdates(); + this.autoPersistUpdates = explicit && manager.isAutoPersistUpdates(); this.logSql = manager.isLogSql(); this.logSummary = manager.isLogSummary(); this.skipCacheAfterWrite = manager.isSkipCacheAfterWrite(); @@ -298,14 +298,14 @@ class JdbcTransaction implements SpiTransaction, TxnProfileEventCodes { } @Override - public void setTransparentPersistence(boolean transparentPersistence) { - this.transparentPersistence = transparentPersistence; + public void setAutoPersistUpdates(boolean autoPersistUpdates) { + this.autoPersistUpdates = autoPersistUpdates; this.batchMode = true; } @Override - public boolean isTransparentPersistence() { - return transparentPersistence; + public boolean isAutoPersistUpdates() { + return autoPersistUpdates; } @Override @@ -788,7 +788,7 @@ class JdbcTransaction implements SpiTransaction, TxnProfileEventCodes { * Flush the JDBC batch and execute derived relationship statements if necessary. */ private void internalBatchFlush() { - if (transparentPersistence) { + if (autoPersistUpdates) { // Experimental - flush dirty beans held by the persistence context manager.flushTransparent(persistenceContext, this); } @@ -1060,7 +1060,7 @@ class JdbcTransaction implements SpiTransaction, TxnProfileEventCodes { throw new IllegalStateException(illegalStateMessage); } try { - if (queryOnly && !transparentPersistence) { + if (queryOnly && !autoPersistUpdates) { connectionEndForQueryOnly(); } else { flushCommitAndNotify(); 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 92f0e1ca9..0d3c82cd6 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 @@ -26,12 +26,12 @@ class NoTransaction implements SpiTransaction { static final NoTransaction INSTANCE = new NoTransaction(); @Override - public void setTransparentPersistence(boolean transparentPersistence) { + public void setAutoPersistUpdates(boolean autoPersistUpdates) { // do nothing } @Override - public boolean isTransparentPersistence() { + public boolean isAutoPersistUpdates() { return false; } diff --git a/ebean-core/src/test/java/org/tests/transparentpersist/TestTransparentPersist.java b/ebean-core/src/test/java/org/tests/transparentpersist/TestTransparentPersist.java index a59ddda60..963cc1dcb 100644 --- a/ebean-core/src/test/java/org/tests/transparentpersist/TestTransparentPersist.java +++ b/ebean-core/src/test/java/org/tests/transparentpersist/TestTransparentPersist.java @@ -24,7 +24,7 @@ public class TestTransparentPersist extends BaseTestCase { EBasicVer newBean; try (Transaction transaction = DB.beginTransaction()) { - transaction.setTransparentPersistence(true); // EXPERIMENTAL feature + transaction.setAutoPersistUpdates(true); // EXPERIMENTAL feature newBean = new EBasicVer("insertMe"); DB.save(newBean); @@ -60,7 +60,7 @@ public class TestTransparentPersist extends BaseTestCase { DB.save(b0); try (Transaction transaction = DB.beginTransaction()) { - transaction.setTransparentPersistence(true); // EXPERIMENTAL feature + transaction.setAutoPersistUpdates(true); // EXPERIMENTAL feature EBasicVer found = DB.find(EBasicVer.class, b0.getId()); // make it dirty @@ -88,7 +88,7 @@ public class TestTransparentPersist extends BaseTestCase { EBasicVer newBean; try (Transaction transaction = DB.beginTransaction()) { - transaction.setTransparentPersistence(true); // EXPERIMENTAL feature + transaction.setAutoPersistUpdates(true); // EXPERIMENTAL feature EBasicVer found = DB.find(EBasicVer.class, b0.getId()); found.setName("auto dirty"); @@ -127,7 +127,7 @@ public class TestTransparentPersist extends BaseTestCase { transPersist.save(); try (Transaction transaction = DB.beginTransaction()) { - transaction.setTransparentPersistence(true); // EXPERIMENTAL feature + transaction.setAutoPersistUpdates(true); // EXPERIMENTAL feature EBasicVer found = DB.find(EBasicVer.class, transPersist.getId()); found.setName("Persisted automatically as dirty"); @@ -152,7 +152,7 @@ public class TestTransparentPersist extends BaseTestCase { DB.save(order); try (Transaction transaction = DB.beginTransaction()) { - transaction.setTransparentPersistence(true); // EXPERIMENTAL feature + transaction.setAutoPersistUpdates(true); // EXPERIMENTAL feature Order foundOrder = DB.find(Order.class, order.getId()); foundOrder.setStatus(Order.Status.APPROVED); @@ -188,7 +188,7 @@ public class TestTransparentPersist extends BaseTestCase { LoggedSql.start(); try (Transaction transaction = DB.beginTransaction()) { - transaction.setTransparentPersistence(true); // EXPERIMENTAL feature + transaction.setAutoPersistUpdates(true); // EXPERIMENTAL feature Order foundOrder = DB.find(Order.class, order.getId()); // we ONLY mutate the foreign key