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/06/04 14:02:34 UTC

[isis] branch master updated: ISIS-2340: move object visibility check to common model

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 b663253  ISIS-2340: move object visibility check to common model
b663253 is described below

commit b663253d70c843434b55aa349fc457982820ddd7
Author: Andi Huber <ah...@apache.org>
AuthorDate: Thu Jun 4 16:02:19 2020 +0200

    ISIS-2340: move object visibility check to common model
---
 .../org/apache/isis/viewer/common/model/object/ObjectUiModel.java  | 7 +++++++
 .../org/apache/isis/viewer/wicket/ui/pages/entity/EntityPage.java  | 4 +---
 2 files changed, 8 insertions(+), 3 deletions(-)

diff --git a/viewers/common/src/main/java/org/apache/isis/viewer/common/model/object/ObjectUiModel.java b/viewers/common/src/main/java/org/apache/isis/viewer/common/model/object/ObjectUiModel.java
index 86659fc..712925e 100644
--- a/viewers/common/src/main/java/org/apache/isis/viewer/common/model/object/ObjectUiModel.java
+++ b/viewers/common/src/main/java/org/apache/isis/viewer/common/model/object/ObjectUiModel.java
@@ -19,11 +19,18 @@
 package org.apache.isis.viewer.common.model.object;
 
 import org.apache.isis.applib.annotation.Where;
+import org.apache.isis.core.metamodel.consent.InteractionInitiatedBy;
 import org.apache.isis.core.metamodel.spec.ManagedObject;
+import org.apache.isis.core.metamodel.spec.ManagedObjects;
 
 public interface ObjectUiModel {
 
     ManagedObject getManagedObject();
+    
+    default boolean isVisible() {
+        return ManagedObjects.VisibilityUtil
+                .isVisible(getManagedObject(), InteractionInitiatedBy.USER);
+    }
 
     public enum Mode {
         VIEW, EDIT
diff --git a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/entity/EntityPage.java b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/entity/EntityPage.java
index 36dc7f4..f425f46 100644
--- a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/entity/EntityPage.java
+++ b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/entity/EntityPage.java
@@ -32,11 +32,9 @@ import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.apache.wicket.request.resource.CssResourceReference;
 import org.apache.wicket.util.string.Strings;
 
-import org.apache.isis.core.metamodel.consent.InteractionInitiatedBy;
 import org.apache.isis.core.metamodel.facets.members.cssclass.CssClassFacet;
 import org.apache.isis.core.metamodel.facets.object.grid.GridFacet;
 import org.apache.isis.core.metamodel.spec.ManagedObject;
-import org.apache.isis.core.metamodel.spec.ManagedObjects;
 import org.apache.isis.core.metamodel.spec.ObjectSpecification;
 import org.apache.isis.core.metamodel.spec.feature.ObjectMember;
 import org.apache.isis.core.webapp.context.IsisWebAppCommonContext;
@@ -173,7 +171,7 @@ public class EntityPage extends PageAbstract {
         }
 
         // check that the entity overall can be viewed.
-        if(!ManagedObjects.VisibilityUtil.isVisible(objectAdapter, InteractionInitiatedBy.USER)) {
+        if(!model.isVisible()) {
             throw new ObjectMember.AuthorizationException();
         }