You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@causeway.apache.org by ah...@apache.org on 2023/07/04 14:03:09 UTC
[causeway] branch 3514-JDO.callback.fixes updated: CAUSEWAY-3514: cleaning up
This is an automated email from the ASF dual-hosted git repository.
ahuber pushed a commit to branch 3514-JDO.callback.fixes
in repository https://gitbox.apache.org/repos/asf/causeway.git
The following commit(s) were added to refs/heads/3514-JDO.callback.fixes by this push:
new 875ffe0be1 CAUSEWAY-3514: cleaning up
875ffe0be1 is described below
commit 875ffe0be15f04e9dad9727af401040375c83201
Author: Andi Huber <ah...@apache.org>
AuthorDate: Tue Jul 4 16:03:04 2023 +0200
CAUSEWAY-3514: cleaning up
---
.../changetracking/JdoLifecycleListener.java | 20 +++-----------------
1 file changed, 3 insertions(+), 17 deletions(-)
diff --git a/persistence/jdo/datanucleus/src/main/java/org/apache/causeway/persistence/jdo/datanucleus/changetracking/JdoLifecycleListener.java b/persistence/jdo/datanucleus/src/main/java/org/apache/causeway/persistence/jdo/datanucleus/changetracking/JdoLifecycleListener.java
index 7700ec7702..563deba283 100644
--- a/persistence/jdo/datanucleus/src/main/java/org/apache/causeway/persistence/jdo/datanucleus/changetracking/JdoLifecycleListener.java
+++ b/persistence/jdo/datanucleus/src/main/java/org/apache/causeway/persistence/jdo/datanucleus/changetracking/JdoLifecycleListener.java
@@ -88,22 +88,18 @@ DetachLifecycleListener, DirtyLifecycleListener, LoadLifecycleListener, StoreLif
public void postLoad(final InstanceLifecycleEvent event) {
log.debug("postLoad {}", ()->_Utils.debug(event));
- System.err.printf("postLoad %s%n", "BEGIN {loaded}");
-
final Persistable pojo = _Utils.persistableFor(event);
val entity = adaptEntity(pojo);
- //TODO only emit if new to session (based on OID)
- objectLifecyclePublisher.onPostLoad(entity);
- System.err.printf("postLoad %s%n", "END");
+ // it seems JDO only calls this once per transaction and entity
+ // so no need to keep track of OIDs that had already been loaded
+ objectLifecyclePublisher.onPostLoad(entity);
}
@Override
public void preStore(final InstanceLifecycleEvent event) {
log.debug("preStore {}", ()->_Utils.debug(event));
- System.err.printf("preStore %s%n", "BEGIN {persisting, updating}");
-
final Persistable pojo = _Utils.persistableFor(event);
val isInserting = isInserting(pojo); // check before adapting
val entity = adaptEntity(pojo);
@@ -119,16 +115,12 @@ DetachLifecycleListener, DirtyLifecycleListener, LoadLifecycleListener, StoreLif
// not here, using preDirty for that instead
//objectLifecyclePublisher.onPreUpdate(entity, /*propertyChangeRecordSupplier*/ null);
}
-
- System.err.printf("preStore %s%n", "END");
}
@Override
public void postStore(final InstanceLifecycleEvent event) {
log.debug("postStore {}", ()->_Utils.debug(event));
- System.err.printf("postStore %s%n", "BEGIN {persisted, updated}");
-
final Persistable pojo = _Utils.persistableFor(event);
val isInserting = isInserting(pojo); // check before adapting
@@ -144,8 +136,6 @@ DetachLifecycleListener, DirtyLifecycleListener, LoadLifecycleListener, StoreLif
// (can't be done here, as the enlist requires to capture the 'before' values)
objectLifecyclePublisher.onPostUpdate(entity);
}
-
- System.err.printf("postStore %s%n", "END");
}
@Override
@@ -155,8 +145,6 @@ DetachLifecycleListener, DirtyLifecycleListener, LoadLifecycleListener, StoreLif
final Persistable pojo = _Utils.persistableFor(event);
final Runnable doPreDirty = ()->doPreDirty(pojo);
- System.err.printf("preDirty %s%n", "BEGIN {updating}");
-
// [CAUSEWAY-3126] pre-dirty nested loop prevention,
// assuming we can cast the DN StateManager to the custom one as provided by the framework
DnStateManagerForCauseway.extractFrom(pojo).ifPresentOrElse(
@@ -164,8 +152,6 @@ DetachLifecycleListener, DirtyLifecycleListener, LoadLifecycleListener, StoreLif
stateManager.acquirePreDirtyPropagationLock(pojo.dnGetObjectId())
.ifPresent(lock->lock.releaseAfter(doPreDirty)),
doPreDirty);
-
- System.err.printf("preDirty %s%n", "END");
}
/**