You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by da...@apache.org on 2021/07/06 12:36:07 UTC

[isis] 02/11: ISIS-2789: wip - hacking

This is an automated email from the ASF dual-hosted git repository.

danhaywood pushed a commit to branch ISIS-2789
in repository https://gitbox.apache.org/repos/asf/isis.git

commit ad4e2faab00e51d53dfa2ea95b7b05b2e4d3867c
Author: danhaywood <da...@haywood-associates.co.uk>
AuthorDate: Tue Jul 6 08:26:52 2021 +0100

    ISIS-2789: wip - hacking
---
 .../changetracking/EntityChangeTrackerDefault.java | 29 +++++++++++++++++++---
 .../ui/components/markup/MarkupFieldFactory.java   |  3 +--
 .../jpa/applib/integration/IsisEntityListener.java | 10 ++++++--
 3 files changed, 34 insertions(+), 8 deletions(-)

diff --git a/core/transaction/src/main/java/org/apache/isis/core/transaction/changetracking/EntityChangeTrackerDefault.java b/core/transaction/src/main/java/org/apache/isis/core/transaction/changetracking/EntityChangeTrackerDefault.java
index ce2f01a..102f662 100644
--- a/core/transaction/src/main/java/org/apache/isis/core/transaction/changetracking/EntityChangeTrackerDefault.java
+++ b/core/transaction/src/main/java/org/apache/isis/core/transaction/changetracking/EntityChangeTrackerDefault.java
@@ -25,6 +25,8 @@ import java.util.concurrent.atomic.AtomicBoolean;
 import java.util.concurrent.atomic.LongAdder;
 import java.util.function.Consumer;
 
+import javax.annotation.PostConstruct;
+import javax.annotation.PreDestroy;
 import javax.annotation.Priority;
 import javax.inject.Inject;
 import javax.inject.Named;
@@ -96,10 +98,6 @@ implements
     HasEnlistedEntityPropertyChanges,
     HasEnlistedEntityChanges {
 
-    @Inject private EntityPropertyChangePublisher entityPropertyChangePublisher;
-    @Inject private EntityChangesPublisher entityChangesPublisher;
-    @Inject private EventBusService eventBusService;
-    @Inject private Provider<InteractionProvider> interactionProviderProvider;
 
     /**
      * Contains initial change records having set the pre-values of every property of every object that was enlisted.
@@ -116,6 +114,29 @@ implements
     @Getter(AccessLevel.PACKAGE)
     private final Map<Bookmark, EntityChangeKind> changeKindByEnlistedAdapter = _Maps.newLinkedHashMap();
 
+    private final EntityPropertyChangePublisher entityPropertyChangePublisher;
+    private final EntityChangesPublisher entityChangesPublisher;
+    private final EventBusService eventBusService;
+    private final Provider<InteractionProvider> interactionProviderProvider;
+
+    @Inject
+    public EntityChangeTrackerDefault(EntityPropertyChangePublisher entityPropertyChangePublisher, EntityChangesPublisher entityChangesPublisher, EventBusService eventBusService, Provider<InteractionProvider> interactionProviderProvider) {
+        this.entityPropertyChangePublisher = entityPropertyChangePublisher;
+        this.entityChangesPublisher = entityChangesPublisher;
+        this.eventBusService = eventBusService;
+        this.interactionProviderProvider = interactionProviderProvider;
+    }
+
+    @PostConstruct
+    public void postConstruct() {
+
+    }
+
+    @PreDestroy
+    public void preDestroy() {
+
+    }
+
     private boolean isEnlisted(final @NonNull ManagedObject adapter) {
         return ManagedObjects.bookmark(adapter)
         .map(changeKindByEnlistedAdapter::containsKey)
diff --git a/incubator/viewers/javafx/ui/src/main/java/org/apache/isis/incubator/viewer/javafx/ui/components/markup/MarkupFieldFactory.java b/incubator/viewers/javafx/ui/src/main/java/org/apache/isis/incubator/viewer/javafx/ui/components/markup/MarkupFieldFactory.java
index e1e77fe..98160ae 100644
--- a/incubator/viewers/javafx/ui/src/main/java/org/apache/isis/incubator/viewer/javafx/ui/components/markup/MarkupFieldFactory.java
+++ b/incubator/viewers/javafx/ui/src/main/java/org/apache/isis/incubator/viewer/javafx/ui/components/markup/MarkupFieldFactory.java
@@ -23,7 +23,6 @@ import java.util.function.Consumer;
 
 import javax.inject.Inject;
 
-import org.springframework.core.annotation.Order;
 import org.w3c.dom.events.EventTarget;
 import org.w3c.dom.html.HTMLAnchorElement;
 
@@ -33,8 +32,8 @@ import org.apache.isis.incubator.viewer.javafx.ui.components.UiComponentHandlerF
 import org.apache.isis.viewer.common.model.components.UiComponentFactory.ComponentRequest;
 
 import lombok.RequiredArgsConstructor;
-import lombok.val;
 import lombok.extern.log4j.Log4j2;
+import lombok.val;
 
 import javafx.application.HostServices;
 import javafx.application.Platform;
diff --git a/persistence/jpa/applib/src/main/java/org/apache/isis/persistence/jpa/applib/integration/IsisEntityListener.java b/persistence/jpa/applib/src/main/java/org/apache/isis/persistence/jpa/applib/integration/IsisEntityListener.java
index a9b0af2..6d3dfe6 100644
--- a/persistence/jpa/applib/src/main/java/org/apache/isis/persistence/jpa/applib/integration/IsisEntityListener.java
+++ b/persistence/jpa/applib/src/main/java/org/apache/isis/persistence/jpa/applib/integration/IsisEntityListener.java
@@ -31,8 +31,8 @@ import org.apache.isis.applib.services.inject.ServiceInjector;
 import org.apache.isis.core.metamodel.objectmanager.ObjectManager;
 import org.apache.isis.core.transaction.changetracking.EntityChangeTracker;
 
-import lombok.val;
 import lombok.extern.log4j.Log4j2;
+import lombok.val;
 
 /**
  * EntityListener class for listing with the {@link javax.persistence.EntityListeners} annotation, to
@@ -54,7 +54,13 @@ public class IsisEntityListener {
 
     // not managed by Spring (directly)
     @Inject private ServiceInjector serviceInjector;
-    @Inject private EntityChangeTracker entityChangeTracker;
+    private EntityChangeTracker entityChangeTracker;
+
+    @Inject
+    public void setEntityChangeTracker(EntityChangeTracker entityChangeTracker) {
+        this.entityChangeTracker = entityChangeTracker;
+    }
+
     @Inject private ObjectManager objectManager;