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/18 18:02:34 UTC

[isis] branch master updated: ISIS-2366: map void action results to non-null ManagedObjects

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 bf0ef48  ISIS-2366: map void action results to non-null ManagedObjects
bf0ef48 is described below

commit bf0ef4843fd661fa93c2a2fe7b3c139c04fe9e61
Author: Andi Huber <ah...@apache.org>
AuthorDate: Mon May 18 20:02:19 2020 +0200

    ISIS-2366: map void action results to non-null ManagedObjects
---
 .../isis/core/metamodel/interactions/managed/ManagedAction.java   | 7 ++++++-
 .../rendering/domainobjects/DomainObjectReprRenderer.java         | 8 +++++++-
 .../org/apache/isis/viewer/wicket/model/models/ScalarModel.java   | 6 ------
 3 files changed, 13 insertions(+), 8 deletions(-)

diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/interactions/managed/ManagedAction.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/interactions/managed/ManagedAction.java
index 52ea7a9..812fbd0 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/interactions/managed/ManagedAction.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/interactions/managed/ManagedAction.java
@@ -80,9 +80,14 @@ public final class ManagedAction extends ManagedMember {
             
         //TODO validate params, and handle invocation exceptions
         
-        val actionResult = getAction()
+        val action = getAction();
+        
+        val actionResult = action
                 .execute(InteractionHead.simple(getOwner()) , actionParameters, InteractionInitiatedBy.USER);
         
+        if(actionResult==null) {
+            return _Either.left(ManagedObject.empty(action.getReturnType()));
+        }
         return _Either.left(actionResult);
         
     }
diff --git a/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/domainobjects/DomainObjectReprRenderer.java b/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/domainobjects/DomainObjectReprRenderer.java
index 344e4e6..bf46712 100644
--- a/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/domainobjects/DomainObjectReprRenderer.java
+++ b/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/domainobjects/DomainObjectReprRenderer.java
@@ -149,7 +149,13 @@ public class DomainObjectReprRenderer extends ReprRendererAbstract<DomainObjectR
     @Override
     public DomainObjectReprRenderer with(final ManagedObject objectAdapter) {
         this.objectAdapter = objectAdapter;
-        String domainTypeHref = DomainTypeReprRenderer.newLinkToBuilder(getResourceContext(), Rel.DOMAIN_TYPE, objectAdapter.getSpecification()).build().getString("href");
+        String domainTypeHref = DomainTypeReprRenderer
+                .newLinkToBuilder(
+                        getResourceContext(), 
+                        Rel.DOMAIN_TYPE, 
+                        objectAdapter.getSpecification())
+                .build()
+                .getString("href");
         addMediaTypeParams(X_RO_DOMAIN_TYPE, domainTypeHref);
         return this;
     }
diff --git a/viewers/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/models/ScalarModel.java b/viewers/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/models/ScalarModel.java
index 04710ad..ccf0dea 100644
--- a/viewers/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/models/ScalarModel.java
+++ b/viewers/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/models/ScalarModel.java
@@ -268,12 +268,6 @@ implements HasRenderingHints, ScalarUiModel, LinksProvider, FormExecutorContext
 
     // //////////////////////////////////////
 
-    //    @Override
-    //    public boolean isInlinePrompt() {
-    //        return getPromptStyle() == PromptStyle.INLINE && canEnterEditMode();
-    //    }
-
-
     private InlinePromptContext inlinePromptContext;
 
     /**