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 2020/05/15 10:19:35 UTC

[isis] branch master updated: ISIS-2340: further simplify PendingModel (2)

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

ahuber pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/isis.git


The following commit(s) were added to refs/heads/master by this push:
     new 3e8bc67  ISIS-2340: further simplify PendingModel (2)
3e8bc67 is described below

commit 3e8bc674b3ea2056925df670197f448162722c64
Author: Andi Huber <ah...@apache.org>
AuthorDate: Fri May 15 12:19:27 2020 +0200

    ISIS-2340: further simplify PendingModel (2)
---
 .../viewer/wicket/model/models/PendingModel.java   | 28 +++++-----------------
 .../model/models/ScalarModelWithMultiPending.java  |  4 ++--
 .../model/models/ScalarModelWithPending.java       |  4 ++--
 3 files changed, 10 insertions(+), 26 deletions(-)

diff --git a/viewers/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/models/PendingModel.java b/viewers/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/models/PendingModel.java
index 769d970..efb57e8 100644
--- a/viewers/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/models/PendingModel.java
+++ b/viewers/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/models/PendingModel.java
@@ -26,7 +26,6 @@ import org.apache.isis.core.webapp.context.memento.ObjectMemento;
 
 import lombok.NonNull;
 import lombok.RequiredArgsConstructor;
-import lombok.val;
 
 @RequiredArgsConstructor
 final class PendingModel extends Model<ObjectMemento> {
@@ -38,6 +37,7 @@ final class PendingModel extends Model<ObjectMemento> {
      * Whether pending has been set (could have been set to null)
      */
     private boolean hasPending;
+    
     /**
      * The new value (could be set to null; hasPending is used to distinguish).
      */
@@ -45,16 +45,13 @@ final class PendingModel extends Model<ObjectMemento> {
 
     @Override
     public ObjectMemento getObject() {
-        if (hasPending) {
-            return pendingMemento;
-        }
-        return ownerModel.memento();
+        return pendingMemento;
     }
 
     @Override
-    public void setObject(final ObjectMemento adapterMemento) {
-        pendingMemento = adapterMemento;
-        hasPending = true;
+    public void setObject(final ObjectMemento pendingMemento) {
+        this.pendingMemento = pendingMemento;
+        this.hasPending = true;
     }
 
     public void clearPending() {
@@ -64,23 +61,10 @@ final class PendingModel extends Model<ObjectMemento> {
 
     public ManagedObject getPendingElseCurrentAdapter() {
         return hasPending 
-                ? getPendingAdapter() 
+                ? getCommonContext().reconstructObject(pendingMemento) 
                 : ownerModel.getObject();
     }
-    
-    ManagedObject getPendingAdapter() {
-        val memento = getObject();
-        return getCommonContext().reconstructObject(memento);
-    }
 
-    ObjectMemento getPendingMemento() {
-        return pendingMemento;
-    }
-
-    void setPendingMemento(ObjectMemento selectedAdapterMemento) {
-        this.pendingMemento = selectedAdapterMemento;
-        hasPending=true;
-    }
     
     // -- HELPER
     
diff --git a/viewers/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/models/ScalarModelWithMultiPending.java b/viewers/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/models/ScalarModelWithMultiPending.java
index d220de3..70f127f 100644
--- a/viewers/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/models/ScalarModelWithMultiPending.java
+++ b/viewers/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/models/ScalarModelWithMultiPending.java
@@ -56,7 +56,7 @@ public interface ScalarModelWithMultiPending extends Serializable {
 
                 @Override
                 public ArrayList<ObjectMemento> getMultiPending() {
-                    ObjectMemento pendingMemento = scalarModel.getPendingModel().getPendingMemento();
+                    ObjectMemento pendingMemento = scalarModel.getPendingModel().getObject();
                     return ObjectMemento.unwrapList(pendingMemento)
                             .orElse(null);
                 }
@@ -65,7 +65,7 @@ public interface ScalarModelWithMultiPending extends Serializable {
                 public void setMultiPending(final ArrayList<ObjectMemento> pending) {
                     ObjectSpecId specId = getScalarModel().getTypeOfSpecification().getSpecId();
                     ObjectMemento adapterMemento = ObjectMemento.wrapMementoList(pending, specId);
-                    scalarModel.getPendingModel().setPendingMemento(adapterMemento);
+                    scalarModel.getPendingModel().setObject(adapterMemento);
                 }
 
                 @Override
diff --git a/viewers/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/models/ScalarModelWithPending.java b/viewers/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/models/ScalarModelWithPending.java
index 80a0d5b..f94fe79 100644
--- a/viewers/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/models/ScalarModelWithPending.java
+++ b/viewers/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/models/ScalarModelWithPending.java
@@ -52,12 +52,12 @@ public interface ScalarModelWithPending extends Serializable {
 
                 @Override
                 public ObjectMemento getPendingMemento() {
-                    return scalarModel.getPendingModel().getPendingMemento();
+                    return scalarModel.getPendingModel().getObject();
                 }
 
                 @Override
                 public void setPendingMemento(ObjectMemento pending) {
-                    scalarModel.getPendingModel().setPendingMemento(pending);
+                    scalarModel.getPendingModel().setObject(pending);
                 }
 
                 @Override