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

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

commit f461f7e37b3d984f65da7bcadd91d90810b56e4c
Author: danhaywood <[email protected]>
AuthorDate: Sun Aug 30 17:01:32 2020 +0100

     ISIS-2222: adds guard to check whether can delete for DomainObject 
publishing demo
---
 .../apache/isis/core/config/IsisConfiguration.java | 32 +++++++++++++++++++---
 .../DomainObjectPublishingVm_delete.java           | 30 ++++++++++----------
 .../DomainObjectPublishingDisabledJdoEntities.java |  6 ++--
 .../DomainObjectPublishingEnabledJdoEntities.java  |  4 +--
 ...tPublishingEnabledMetaAnnotatedJdoEntities.java |  6 ++--
 ...shingEnabledMetaAnnotOverriddenJdoEntities.java |  6 ++--
 6 files changed, 51 insertions(+), 33 deletions(-)

diff --git 
a/core/config/src/main/java/org/apache/isis/core/config/IsisConfiguration.java 
b/core/config/src/main/java/org/apache/isis/core/config/IsisConfiguration.java
index e46e516..5df2204 100644
--- 
a/core/config/src/main/java/org/apache/isis/core/config/IsisConfiguration.java
+++ 
b/core/config/src/main/java/org/apache/isis/core/config/IsisConfiguration.java
@@ -503,8 +503,14 @@ public class IsisConfiguration {
                      *         If set to any other subtype, then an event 
<i>is</i> sent.
                      *     </li>
                      * </ul>
+                     *
+                     * <p>
+                     *     The default is <tt>false</tt>, because otherwise 
the mere presence of <tt>@DomainObjectLayout</tt>
+                     *     (perhaps for some attribute other than this one) 
will cause any imperative <code>cssClass()</code>
+                     *     method to be ignored.
+                     * </p>
                      */
-                    private boolean postForDefault = true;
+                    private boolean postForDefault = false;
                 }
 
                 private final IconUiEvent iconUiEvent = new IconUiEvent();
@@ -538,8 +544,14 @@ public class IsisConfiguration {
                      *         If set to any other subtype, then an event 
<i>is</i> sent.
                      *     </li>
                      * </ul>
+                     *
+                     * <p>
+                     *     The default is <tt>false</tt>, because otherwise 
the mere presence of <tt>@DomainObjectLayout</tt>
+                     *     (perhaps for some attribute other than this one) 
will cause any imperative <code>iconName()</code>
+                     *     method to be ignored.
+                     * </p>
                      */
-                    private boolean postForDefault = true;
+                    private boolean postForDefault = false;
                 }
 
                 private final LayoutUiEvent layoutUiEvent = new 
LayoutUiEvent();
@@ -578,8 +590,14 @@ public class IsisConfiguration {
                      *         If set to any other subtype, then an event 
<i>is</i> sent.
                      *     </li>
                      * </ul>
+                     *
+                     * <p>
+                     *     The default is <tt>false</tt>, because otherwise 
the mere presence of <tt>@DomainObjectLayout</tt>
+                     *     (perhaps for some attribute other than this one) 
will cause any imperative <code>layout()</code>
+                     *     method to be ignored.
+                     * </p>
                      */
-                    private boolean postForDefault = true;
+                    private boolean postForDefault = false;
                 }
 
                 private final TitleUiEvent titleUiEvent = new TitleUiEvent();
@@ -613,8 +631,14 @@ public class IsisConfiguration {
                      *         If set to any other subtype, then an event 
<i>is</i> sent.
                      *     </li>
                      * </ul>
+                     *
+                     * <p>
+                     *     The default is <tt>false</tt>, because otherwise 
the mere presence of <tt>@DomainObjectLayout</tt>
+                     *     (perhaps for some attribute other than this one) 
will cause any imperative <code>title()</code>
+                     *     method to be ignored.
+                     * </p>
                      */
-                    private boolean postForDefault = true;
+                    private boolean postForDefault = false;
                 }
             }
 
diff --git 
a/examples/demo/domain/src/main/java/demoapp/dom/annotDomain/DomainObject/publishing/DomainObjectPublishingVm_delete.java
 
b/examples/demo/domain/src/main/java/demoapp/dom/annotDomain/DomainObject/publishing/DomainObjectPublishingVm_delete.java
index b5ea910..83d3ecb 100644
--- 
a/examples/demo/domain/src/main/java/demoapp/dom/annotDomain/DomainObject/publishing/DomainObjectPublishingVm_delete.java
+++ 
b/examples/demo/domain/src/main/java/demoapp/dom/annotDomain/DomainObject/publishing/DomainObjectPublishingVm_delete.java
@@ -51,28 +51,28 @@ public class DomainObjectPublishingVm_delete {
         return domainObjectPublishingVm;
     }
     public DomainObjectPublishingEnabledJdo default0Act() {
-        return publishingEnabledJdoEntities.first();
+        return publishingEnabledJdoEntities.first().get();
     }
     public DomainObjectPublishingDisabledJdo default1Act() {
-        return publishingDisabledJdoEntities.first();
+        return publishingDisabledJdoEntities.first().get();
     }
     public DomainObjectPublishingEnabledMetaAnnotatedJdo default2Act() {
-        return publishingEnabledMetaAnnotatedJdoEntities.first();
+        return publishingEnabledMetaAnnotatedJdoEntities.first().get();
     }
     public DomainObjectPublishingEnabledMetaAnnotOverriddenJdo default3Act() {
-        return publishingEnabledMetaAnnotOverriddenJdoEntities.first();
+        return publishingEnabledMetaAnnotOverriddenJdoEntities.first().get();
+    }
+    public String disableAct() {
+        if(!publishingEnabledJdoEntities.first().isPresent()) { return "No 
EnabledJdo to delete"; }
+        if(!publishingDisabledJdoEntities.first().isPresent()) { return "No 
DisabledJdo to delete"; }
+        if(!publishingEnabledMetaAnnotatedJdoEntities.first().isPresent()) { 
return "No MetaAnnotated to delete"; }
+        
if(!publishingEnabledMetaAnnotOverriddenJdoEntities.first().isPresent()) { 
return "No MetaAnnotated But Overridden to delete"; }
+        return null;
     }
 
-    @Inject
-    DomainObjectPublishingEnabledJdoEntities publishingEnabledJdoEntities;
-
-    @Inject
-    DomainObjectPublishingDisabledJdoEntities publishingDisabledJdoEntities;
-
-    @Inject
-    DomainObjectPublishingEnabledMetaAnnotatedJdoEntities 
publishingEnabledMetaAnnotatedJdoEntities;
-
-    @Inject
-    DomainObjectPublishingEnabledMetaAnnotOverriddenJdoEntities 
publishingEnabledMetaAnnotOverriddenJdoEntities;
+    @Inject DomainObjectPublishingEnabledJdoEntities 
publishingEnabledJdoEntities;
+    @Inject DomainObjectPublishingDisabledJdoEntities 
publishingDisabledJdoEntities;
+    @Inject DomainObjectPublishingEnabledMetaAnnotatedJdoEntities 
publishingEnabledMetaAnnotatedJdoEntities;
+    @Inject DomainObjectPublishingEnabledMetaAnnotOverriddenJdoEntities 
publishingEnabledMetaAnnotOverriddenJdoEntities;
 }
 //end::class[]
diff --git 
a/examples/demo/domain/src/main/java/demoapp/dom/annotDomain/DomainObject/publishing/annotated/disabled/DomainObjectPublishingDisabledJdoEntities.java
 
b/examples/demo/domain/src/main/java/demoapp/dom/annotDomain/DomainObject/publishing/annotated/disabled/DomainObjectPublishingDisabledJdoEntities.java
index 01e8166..8a62b56 100644
--- 
a/examples/demo/domain/src/main/java/demoapp/dom/annotDomain/DomainObject/publishing/annotated/disabled/DomainObjectPublishingDisabledJdoEntities.java
+++ 
b/examples/demo/domain/src/main/java/demoapp/dom/annotDomain/DomainObject/publishing/annotated/disabled/DomainObjectPublishingDisabledJdoEntities.java
@@ -10,8 +10,6 @@ import org.springframework.stereotype.Service;
 
 import org.apache.isis.applib.services.repository.RepositoryService;
 
-import 
demoapp.dom.annotDomain.DomainObject.publishing.annotated.enabled.DomainObjectPublishingEnabledJdo;
-
 @Service
 public class DomainObjectPublishingDisabledJdoEntities {
 
@@ -23,8 +21,8 @@ public class DomainObjectPublishingDisabledJdoEntities {
         return 
repositoryService.allInstances(DomainObjectPublishingDisabledJdo.class);
     }
 
-    public DomainObjectPublishingDisabledJdo first() {
-        return all().stream().findFirst().get();
+    public Optional<DomainObjectPublishingDisabledJdo> first() {
+        return all().stream().findFirst();
     }
 
     public DomainObjectPublishingDisabledJdo create(String newValue) {
diff --git 
a/examples/demo/domain/src/main/java/demoapp/dom/annotDomain/DomainObject/publishing/annotated/enabled/DomainObjectPublishingEnabledJdoEntities.java
 
b/examples/demo/domain/src/main/java/demoapp/dom/annotDomain/DomainObject/publishing/annotated/enabled/DomainObjectPublishingEnabledJdoEntities.java
index 303e1f0..bd72eff 100644
--- 
a/examples/demo/domain/src/main/java/demoapp/dom/annotDomain/DomainObject/publishing/annotated/enabled/DomainObjectPublishingEnabledJdoEntities.java
+++ 
b/examples/demo/domain/src/main/java/demoapp/dom/annotDomain/DomainObject/publishing/annotated/enabled/DomainObjectPublishingEnabledJdoEntities.java
@@ -21,8 +21,8 @@ public class DomainObjectPublishingEnabledJdoEntities {
         return 
repositoryService.allInstances(DomainObjectPublishingEnabledJdo.class);
     }
 
-    public DomainObjectPublishingEnabledJdo first() {
-        return all().stream().findFirst().get();
+    public Optional<DomainObjectPublishingEnabledJdo> first() {
+        return all().stream().findFirst();
     }
 
     public DomainObjectPublishingEnabledJdo create(String newValue) {
diff --git 
a/examples/demo/domain/src/main/java/demoapp/dom/annotDomain/DomainObject/publishing/metaAnnot/enabled/DomainObjectPublishingEnabledMetaAnnotatedJdoEntities.java
 
b/examples/demo/domain/src/main/java/demoapp/dom/annotDomain/DomainObject/publishing/metaAnnot/enabled/DomainObjectPublishingEnabledMetaAnnotatedJdoEntities.java
index 3c4f352..2d85d62 100644
--- 
a/examples/demo/domain/src/main/java/demoapp/dom/annotDomain/DomainObject/publishing/metaAnnot/enabled/DomainObjectPublishingEnabledMetaAnnotatedJdoEntities.java
+++ 
b/examples/demo/domain/src/main/java/demoapp/dom/annotDomain/DomainObject/publishing/metaAnnot/enabled/DomainObjectPublishingEnabledMetaAnnotatedJdoEntities.java
@@ -10,8 +10,6 @@ import org.springframework.stereotype.Service;
 
 import org.apache.isis.applib.services.repository.RepositoryService;
 
-import 
demoapp.dom.annotDomain.DomainObject.publishing.annotated.enabled.DomainObjectPublishingEnabledJdo;
-
 @Service
 public class DomainObjectPublishingEnabledMetaAnnotatedJdoEntities {
 
@@ -23,8 +21,8 @@ public class 
DomainObjectPublishingEnabledMetaAnnotatedJdoEntities {
         return 
repositoryService.allInstances(DomainObjectPublishingEnabledMetaAnnotatedJdo.class);
     }
 
-    public DomainObjectPublishingEnabledMetaAnnotatedJdo first() {
-        return all().stream().findFirst().get();
+    public Optional<DomainObjectPublishingEnabledMetaAnnotatedJdo> first() {
+        return all().stream().findFirst();
     }
 
     public DomainObjectPublishingEnabledMetaAnnotatedJdo create(String 
newValue) {
diff --git 
a/examples/demo/domain/src/main/java/demoapp/dom/annotDomain/DomainObject/publishing/metaAnnotOverridden/enabled/DomainObjectPublishingEnabledMetaAnnotOverriddenJdoEntities.java
 
b/examples/demo/domain/src/main/java/demoapp/dom/annotDomain/DomainObject/publishing/metaAnnotOverridden/enabled/DomainObjectPublishingEnabledMetaAnnotOverriddenJdoEntities.java
index 9f83119..cdf5a4c 100644
--- 
a/examples/demo/domain/src/main/java/demoapp/dom/annotDomain/DomainObject/publishing/metaAnnotOverridden/enabled/DomainObjectPublishingEnabledMetaAnnotOverriddenJdoEntities.java
+++ 
b/examples/demo/domain/src/main/java/demoapp/dom/annotDomain/DomainObject/publishing/metaAnnotOverridden/enabled/DomainObjectPublishingEnabledMetaAnnotOverriddenJdoEntities.java
@@ -10,8 +10,6 @@ import org.springframework.stereotype.Service;
 
 import org.apache.isis.applib.services.repository.RepositoryService;
 
-import 
demoapp.dom.annotDomain.DomainObject.publishing.metaAnnot.enabled.DomainObjectPublishingEnabledMetaAnnotatedJdo;
-
 @Service
 public class DomainObjectPublishingEnabledMetaAnnotOverriddenJdoEntities {
 
@@ -23,8 +21,8 @@ public class 
DomainObjectPublishingEnabledMetaAnnotOverriddenJdoEntities {
         return 
repositoryService.allInstances(DomainObjectPublishingEnabledMetaAnnotOverriddenJdo.class);
     }
 
-    public DomainObjectPublishingEnabledMetaAnnotOverriddenJdo first() {
-        return all().stream().findFirst().get();
+    public Optional<DomainObjectPublishingEnabledMetaAnnotOverriddenJdo> 
first() {
+        return all().stream().findFirst();
     }
 
     public DomainObjectPublishingEnabledMetaAnnotOverriddenJdo create(String 
newValue) {

Reply via email to