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 2018/02/07 14:49:30 UTC

[isis] branch maint-1.16.1 updated: ISIS-1569: dtoProcessor implies persistence of commands.

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

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


The following commit(s) were added to refs/heads/maint-1.16.1 by this push:
     new 36b96fe  ISIS-1569: dtoProcessor implies persistence of commands.
36b96fe is described below

commit 36b96fe9c51a20af7eb6edab8d4216c12fe51199
Author: Dan Haywood <da...@haywood-associates.co.uk>
AuthorDate: Wed Feb 7 14:47:41 2018 +0000

    ISIS-1569: dtoProcessor implies persistence of commands.
    
    Also, remove commandReification.DISABLED for mixins (since this seems to be incorrectly implemented), and instead use commandPersistence.NOT_PERSISTED
---
 .../services/layout/Object_rebuildMetamodel.java   |  6 +++---
 .../command/CommandFacetForActionAnnotation.java   | 22 +++++++++++++++++-----
 .../wicket/viewer/services/Object_clearHints.java  |  3 ++-
 3 files changed, 22 insertions(+), 9 deletions(-)

diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/layout/Object_rebuildMetamodel.java b/core/applib/src/main/java/org/apache/isis/applib/services/layout/Object_rebuildMetamodel.java
index 3ee9e5d..405d782 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/layout/Object_rebuildMetamodel.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/layout/Object_rebuildMetamodel.java
@@ -18,7 +18,7 @@ package org.apache.isis.applib.services.layout;
 
 import org.apache.isis.applib.annotation.Action;
 import org.apache.isis.applib.annotation.ActionLayout;
-import org.apache.isis.applib.annotation.CommandReification;
+import org.apache.isis.applib.annotation.CommandPersistence;
 import org.apache.isis.applib.annotation.Contributed;
 import org.apache.isis.applib.annotation.MemberOrder;
 import org.apache.isis.applib.annotation.Mixin;
@@ -40,8 +40,8 @@ public class Object_rebuildMetamodel {
     @Action(
             domainEvent = ActionDomainEvent.class,
             semantics = SemanticsOf.IDEMPOTENT,
-            restrictTo = RestrictTo.PROTOTYPING,
-            command = CommandReification.DISABLED
+            commandPersistence = CommandPersistence.NOT_PERSISTED,
+            restrictTo = RestrictTo.PROTOTYPING
     )
     @ActionLayout(
             contributed = Contributed.AS_ACTION,
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/action/command/CommandFacetForActionAnnotation.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/action/command/CommandFacetForActionAnnotation.java
index 725d54d..6a9cff4 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/action/command/CommandFacetForActionAnnotation.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/action/command/CommandFacetForActionAnnotation.java
@@ -40,15 +40,27 @@ public class CommandFacetForActionAnnotation extends CommandFacetAbstract {
             final ServicesInjector servicesInjector,
             final FacetHolder holder) {
 
-        CommandReification commandReification = action != null ? action.command() : CommandReification.AS_CONFIGURED;
-        final CommandPersistence commandPersistence = action != null ? action.commandPersistence() : CommandPersistence.PERSISTED;
-        final CommandExecuteIn commandExecuteIn = action != null? action.commandExecuteIn() :  CommandExecuteIn.FOREGROUND;
+        CommandReification commandReification =
+                action != null
+                    ? action.command()
+                    : CommandReification.AS_CONFIGURED;
+        CommandPersistence commandPersistence =
+                action != null
+                    ? action.commandPersistence()
+                    : CommandPersistence.PERSISTED;
+        final CommandExecuteIn commandExecuteIn =
+                action != null
+                    ? action.commandExecuteIn()
+                    :  CommandExecuteIn.FOREGROUND;
         final Class<? extends CommandDtoProcessor> processorClass =
-                action != null ? action.commandDtoProcessor() : null;
-        final CommandDtoProcessor processor = (CommandDtoProcessor) newProcessorElseNull(processorClass);
+                action != null
+                    ? action.commandDtoProcessor()
+                    : null;
+        final CommandDtoProcessor processor = newProcessorElseNull(processorClass);
 
         if(processor != null) {
             commandReification = CommandReification.ENABLED;
+            commandPersistence = CommandPersistence.PERSISTED;
         }
         final Persistence persistence = CommandPersistence.from(commandPersistence);
         final ExecuteIn executeIn = CommandExecuteIn.from(commandExecuteIn);
diff --git a/core/viewer-wicket-impl/src/main/java/org/apache/isis/viewer/wicket/viewer/services/Object_clearHints.java b/core/viewer-wicket-impl/src/main/java/org/apache/isis/viewer/wicket/viewer/services/Object_clearHints.java
index 24adfe1..497f243 100644
--- a/core/viewer-wicket-impl/src/main/java/org/apache/isis/viewer/wicket/viewer/services/Object_clearHints.java
+++ b/core/viewer-wicket-impl/src/main/java/org/apache/isis/viewer/wicket/viewer/services/Object_clearHints.java
@@ -20,6 +20,7 @@ package org.apache.isis.viewer.wicket.viewer.services;
 
 import org.apache.isis.applib.annotation.Action;
 import org.apache.isis.applib.annotation.ActionLayout;
+import org.apache.isis.applib.annotation.CommandPersistence;
 import org.apache.isis.applib.annotation.CommandReification;
 import org.apache.isis.applib.annotation.Contributed;
 import org.apache.isis.applib.annotation.MemberOrder;
@@ -43,7 +44,7 @@ public class Object_clearHints {
     @Action(
             domainEvent = ActionDomainEvent.class,
             semantics = SemanticsOf.IDEMPOTENT,
-            command = CommandReification.DISABLED
+            commandPersistence = CommandPersistence.NOT_PERSISTED
     )
     @ActionLayout(
             contributed = Contributed.AS_ACTION,

-- 
To stop receiving notification emails like this one, please contact
danhaywood@apache.org.