You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by ah...@apache.org on 2021/01/05 09:39:58 UTC
[isis] branch 2033-Spring_Data_Integration updated: ISIS-2033:
jdo-integration: bit of house-keeping
This is an automated email from the ASF dual-hosted git repository.
ahuber pushed a commit to branch 2033-Spring_Data_Integration
in repository https://gitbox.apache.org/repos/asf/isis.git
The following commit(s) were added to refs/heads/2033-Spring_Data_Integration by this push:
new 777badc ISIS-2033: jdo-integration: bit of house-keeping
777badc is described below
commit 777badcd829970e8c7e921530cba9cc4254d3fd6
Author: Andi Huber <ah...@apache.org>
AuthorDate: Tue Jan 5 10:39:46 2021 +0100
ISIS-2033: jdo-integration: bit of house-keeping
---
.../runtime/events/AppLifecycleEventService.java | 13 -----------
.../lifecycles/JdoLifecycleListener.java | 25 ++++++++++------------
.../integration/session/JdoInteractionSession.java | 8 +++----
.../util/interaction/InteractionTestAbstract.java | 16 +++++++-------
4 files changed, 23 insertions(+), 39 deletions(-)
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/events/AppLifecycleEventService.java b/core/runtime/src/main/java/org/apache/isis/core/runtime/events/AppLifecycleEventService.java
index 090c703..7d8dfdf 100644
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/events/AppLifecycleEventService.java
+++ b/core/runtime/src/main/java/org/apache/isis/core/runtime/events/AppLifecycleEventService.java
@@ -28,8 +28,6 @@ import org.springframework.stereotype.Service;
import org.apache.isis.applib.annotation.OrderPrecedence;
import org.apache.isis.applib.services.eventbus.EventBusService;
-import org.apache.isis.core.transaction.changetracking.events.PostStoreEvent;
-import org.apache.isis.core.transaction.changetracking.events.PreStoreEvent;
/**
*
@@ -56,15 +54,4 @@ public class AppLifecycleEventService {
eventBusService.post(AppLifecycleEvent.POST_METAMODEL);
}
- // -- PERSISTENT OBJECT EVENTS
-
- public void firePreStoreEvent(Object persistableObject) {
- eventBusService.post(PreStoreEvent.of(persistableObject));
- }
-
- public void firePostStoreEvent(Object persistableObject) {
- eventBusService.post(PostStoreEvent.of(persistableObject));
- }
-
-
}
diff --git a/persistence/jdo/integration/src/main/java/org/apache/isis/persistence/jdo/integration/lifecycles/JdoLifecycleListener.java b/persistence/jdo/integration/src/main/java/org/apache/isis/persistence/jdo/integration/lifecycles/JdoLifecycleListener.java
index 69a44b3..9980730 100644
--- a/persistence/jdo/integration/src/main/java/org/apache/isis/persistence/jdo/integration/lifecycles/JdoLifecycleListener.java
+++ b/persistence/jdo/integration/src/main/java/org/apache/isis/persistence/jdo/integration/lifecycles/JdoLifecycleListener.java
@@ -33,10 +33,12 @@ import javax.jdo.listener.StoreLifecycleListener;
import org.datanucleus.enhancement.Persistable;
+import org.apache.isis.applib.services.eventbus.EventBusService;
import org.apache.isis.commons.internal.collections._Maps;
import org.apache.isis.core.metamodel.spec.ManagedObject;
-import org.apache.isis.core.runtime.events.AppLifecycleEventService;
import org.apache.isis.core.transaction.changetracking.EntityChangeTracker;
+import org.apache.isis.core.transaction.changetracking.events.PostStoreEvent;
+import org.apache.isis.core.transaction.changetracking.events.PreStoreEvent;
import org.apache.isis.persistence.jdo.integration.metamodel.JdoMetamodelUtil;
import lombok.NonNull;
@@ -68,7 +70,7 @@ DetachLifecycleListener, DirtyLifecycleListener, LoadLifecycleListener, StoreLif
private final @NonNull EntityChangeEmitter entityChangeEmitter;
private final @NonNull EntityChangeTracker entityChangeTracker;
- private final @NonNull AppLifecycleEventService appLifecycleEventService;
+ private final @NonNull EventBusService eventBusService;
/////////////////////////////////////////////////////////////////////////
// callbacks
@@ -81,14 +83,12 @@ DetachLifecycleListener, DirtyLifecycleListener, LoadLifecycleListener, StoreLif
@Override
public void preAttach(final InstanceLifecycleEvent event) {
- final Persistable pojo = _Utils.persistableFor(event);
- _Utils.ensureRootObject(pojo);
+ // no-op
}
@Override
public void postAttach(final InstanceLifecycleEvent event) {
- final Persistable pojo = _Utils.persistableFor(event);
- _Utils.ensureRootObject(pojo);
+ // no-op
}
@Override
@@ -106,7 +106,7 @@ DetachLifecycleListener, DirtyLifecycleListener, LoadLifecycleListener, StoreLif
if(persistableObject!=null
&& JdoMetamodelUtil.isPersistenceEnhanced(persistableObject.getClass())) {
- appLifecycleEventService.firePreStoreEvent(persistableObject);
+ eventBusService.post(PreStoreEvent.of(persistableObject));
}
final Persistable pojo = _Utils.persistableFor(event);
@@ -124,7 +124,7 @@ DetachLifecycleListener, DirtyLifecycleListener, LoadLifecycleListener, StoreLif
if(persistableObject!=null &&
JdoMetamodelUtil.isPersistenceEnhanced(persistableObject.getClass())) {
- appLifecycleEventService.firePostStoreEvent(persistableObject);
+ eventBusService.post(PostStoreEvent.of(persistableObject));
}
final Persistable pojo = _Utils.persistableFor(event);
@@ -157,8 +157,6 @@ DetachLifecycleListener, DirtyLifecycleListener, LoadLifecycleListener, StoreLif
public void preDelete(InstanceLifecycleEvent event) {
final Persistable pojo = _Utils.persistableFor(event);
entityChangeEmitter.enlistDeletingAndInvokeIsisRemovingCallbackFacet(pojo);
-
-
}
@Override
@@ -190,14 +188,12 @@ DetachLifecycleListener, DirtyLifecycleListener, LoadLifecycleListener, StoreLif
@Override
public void preDetach(InstanceLifecycleEvent event) {
- final Persistable pojo = _Utils.persistableFor(event);
- _Utils.ensureRootObject(pojo);
+ // no-op
}
@Override
public void postDetach(InstanceLifecycleEvent event) {
- final Persistable pojo = _Utils.persistableFor(event);
- _Utils.ensureRootObject(pojo);
+ // no-op
}
// /////////////////////////////////////////////////////////
@@ -227,5 +223,6 @@ DetachLifecycleListener, DirtyLifecycleListener, LoadLifecycleListener, StoreLif
// final ObjectAdapter adapter = persistenceSession.getAdapterFor(pojo);
// return phase + " " + location.prefix + " " + LifecycleEventType.lookup(event.getEventType()) + ": oid=" + (adapter !=null? adapter.getOid(): "(null)") + " ,pojo " + pojo;
// }
+
}
diff --git a/persistence/jdo/integration/src/main/java/org/apache/isis/persistence/jdo/integration/session/JdoInteractionSession.java b/persistence/jdo/integration/src/main/java/org/apache/isis/persistence/jdo/integration/session/JdoInteractionSession.java
index 7e96a24..e1040a8 100644
--- a/persistence/jdo/integration/src/main/java/org/apache/isis/persistence/jdo/integration/session/JdoInteractionSession.java
+++ b/persistence/jdo/integration/src/main/java/org/apache/isis/persistence/jdo/integration/session/JdoInteractionSession.java
@@ -24,11 +24,11 @@ import java.util.List;
import javax.enterprise.inject.Vetoed;
import javax.jdo.PersistenceManager;
+import org.apache.isis.applib.services.eventbus.EventBusService;
import org.apache.isis.commons.internal.assertions._Assert.OpenCloseState;
import org.apache.isis.core.interaction.session.InteractionSession;
import org.apache.isis.core.metamodel.context.HasMetaModelContext;
import org.apache.isis.core.metamodel.context.MetaModelContext;
-import org.apache.isis.core.runtime.events.AppLifecycleEventService;
import org.apache.isis.core.transaction.changetracking.EntityChangeTracker;
import org.apache.isis.persistence.jdo.integration.lifecycles.JdoLifecycleListener;
import org.apache.isis.persistence.jdo.spring.integration.TransactionAwarePersistenceManagerFactoryProxy;
@@ -128,8 +128,8 @@ implements HasMetaModelContext {
private PersistenceManager integrateWithApplicationLayer(final PersistenceManager persistenceManager) {
- val appLifecycleEventService = metaModelContext.getServiceRegistry()
- .lookupServiceElseFail(AppLifecycleEventService.class);
+ val eventBusService = metaModelContext.getServiceRegistry()
+ .lookupServiceElseFail(EventBusService.class);
val entityChangeTracker = metaModelContext.getServiceRegistry()
.lookupServiceElseFail(EntityChangeTracker.class);
@@ -140,7 +140,7 @@ implements HasMetaModelContext {
// install JDO specific entity change listeners ...
val jdoLifecycleListener = new JdoLifecycleListener(
- entityChangeEmitter, entityChangeTracker, appLifecycleEventService);
+ entityChangeEmitter, entityChangeTracker, eventBusService);
persistenceManager.addInstanceLifecycleListener(jdoLifecycleListener, (Class[]) null);
onCloseTasks.add(()->{
diff --git a/regressiontests/stable/src/main/java/org/apache/isis/testdomain/util/interaction/InteractionTestAbstract.java b/regressiontests/stable/src/main/java/org/apache/isis/testdomain/util/interaction/InteractionTestAbstract.java
index 0d26d2e..7647f10 100644
--- a/regressiontests/stable/src/main/java/org/apache/isis/testdomain/util/interaction/InteractionTestAbstract.java
+++ b/regressiontests/stable/src/main/java/org/apache/isis/testdomain/util/interaction/InteractionTestAbstract.java
@@ -18,6 +18,10 @@
*/
package org.apache.isis.testdomain.util.interaction;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertTrue;
+
import java.util.Collections;
import java.util.List;
import java.util.TreeSet;
@@ -28,10 +32,6 @@ import java.util.stream.Collectors;
import javax.annotation.Nullable;
import javax.inject.Inject;
-import static org.junit.jupiter.api.Assertions.assertEquals;
-import static org.junit.jupiter.api.Assertions.assertFalse;
-import static org.junit.jupiter.api.Assertions.assertTrue;
-
import org.apache.isis.applib.annotation.Where;
import org.apache.isis.applib.services.wrapper.WrapperFactory;
import org.apache.isis.commons.internal.base._NullSafe;
@@ -42,7 +42,7 @@ import org.apache.isis.core.metamodel.interactions.managed.ActionInteraction;
import org.apache.isis.core.metamodel.interactions.managed.CollectionInteraction;
import org.apache.isis.core.metamodel.interactions.managed.PropertyInteraction;
import org.apache.isis.core.metamodel.objectmanager.ObjectManager;
-import org.apache.isis.core.transaction.changetracking.EntityChangeTrackerDefault;
+import org.apache.isis.core.transaction.changetracking.EntityChangeTracker;
import org.apache.isis.testdomain.applayer.publishing.EntityPropertyChangeSubscriberForTesting;
import org.apache.isis.testdomain.util.CollectionAssertions;
import org.apache.isis.testdomain.util.kv.KVStoreForTesting;
@@ -56,10 +56,10 @@ public abstract class InteractionTestAbstract extends IsisIntegrationTestAbstrac
@Inject protected InteractionFactory interactionFactory;
@Inject protected WrapperFactory wrapper;
@Inject protected KVStoreForTesting kvStoreForTesting;
- @Inject private javax.inject.Provider<EntityChangeTrackerDefault> changedObjectsServiceProvider;
+ @Inject private javax.inject.Provider<EntityChangeTracker> entityChangeTrackerProvider;
- protected EntityChangeTrackerDefault getChangedObjectsService() {
- return changedObjectsServiceProvider.get();
+ protected EntityChangeTracker getEntityChangeTracker() {
+ return entityChangeTrackerProvider.get();
}
// -- INTERACTION STARTERS