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 2021/07/20 09:04:57 UTC
[isis] branch master updated: ISIS-2810: some housekeeping around
ObjectVisibilityContext
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 fcc6a3a ISIS-2810: some housekeeping around ObjectVisibilityContext
fcc6a3a is described below
commit fcc6a3a882e54e3834f098f07b0196052c94d07a
Author: Andi Huber <ah...@apache.org>
AuthorDate: Tue Jul 20 11:04:42 2021 +0200
ISIS-2810: some housekeeping around ObjectVisibilityContext
---
.../metamodel/interactions/ObjectVisibilityContext.java | 4 ++--
.../navigation/NavigationFacetDerivedFromHiddenType.java | 13 ++++++++++---
.../apache/isis/core/metamodel/spec/ManagedObjects.java | 7 ++++---
.../ajaxtable/CollectionContentsSortableDataProvider.java | 15 +++++++++------
4 files changed, 25 insertions(+), 14 deletions(-)
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/interactions/ObjectVisibilityContext.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/interactions/ObjectVisibilityContext.java
index 44d7e66..5e7be40 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/interactions/ObjectVisibilityContext.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/interactions/ObjectVisibilityContext.java
@@ -36,14 +36,14 @@ extends VisibilityContext
implements ProposedHolder {
public ObjectVisibilityContext(
- final ManagedObject targetAdapter,
+ final InteractionHead head,
final Identifier identifier,
final InteractionInitiatedBy interactionInitiatedBy,
final Where where) {
super(
InteractionContextType.OBJECT_VISIBILITY,
- InteractionHead.regular(targetAdapter), identifier, interactionInitiatedBy, where);
+ head, identifier, interactionInitiatedBy, where);
}
@Override
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/postprocessors/members/navigation/NavigationFacetDerivedFromHiddenType.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/postprocessors/members/navigation/NavigationFacetDerivedFromHiddenType.java
index 9f00db2..a8222c5 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/postprocessors/members/navigation/NavigationFacetDerivedFromHiddenType.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/postprocessors/members/navigation/NavigationFacetDerivedFromHiddenType.java
@@ -31,7 +31,10 @@ import org.apache.isis.core.metamodel.spec.ObjectSpecification;
import lombok.val;
-public class NavigationFacetDerivedFromHiddenType extends FacetAbstract implements NavigationFacet {
+public class NavigationFacetDerivedFromHiddenType
+extends FacetAbstract
+implements
+ NavigationFacet {
private final ObjectSpecification navigatedType;
@@ -52,8 +55,12 @@ public class NavigationFacetDerivedFromHiddenType extends FacetAbstract implemen
// that navigate to a class that has the HiddenTypeFacet
return null;
}
- val ovc = new ObjectVisibilityContext(ic.getHead().getOwner(), Identifier.classIdentifier(navigatedType.getLogicalType()), ic.getInitiatedBy(), ic.getWhere());
- final String hides = facet.hides(ovc);
+ val objVisibilityContext = new ObjectVisibilityContext(
+ ic.getHead(),
+ Identifier.classIdentifier(navigatedType.getLogicalType()),
+ ic.getInitiatedBy(),
+ ic.getWhere());
+ final String hides = facet.hides(objVisibilityContext);
return hides;
}
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/spec/ManagedObjects.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/spec/ManagedObjects.java
index 020f69b..ff6998e 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/spec/ManagedObjects.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/spec/ManagedObjects.java
@@ -57,6 +57,7 @@ import org.apache.isis.core.metamodel.facets.collections.CollectionFacet;
import org.apache.isis.core.metamodel.facets.object.entity.EntityFacet;
import org.apache.isis.core.metamodel.facets.object.entity.PersistenceStandard;
import org.apache.isis.core.metamodel.facets.object.viewmodel.ViewModelFacet;
+import org.apache.isis.core.metamodel.interactions.InteractionHead;
import org.apache.isis.core.metamodel.interactions.InteractionUtils;
import org.apache.isis.core.metamodel.interactions.ObjectVisibilityContext;
import org.apache.isis.core.metamodel.interactions.VisibilityContext;
@@ -778,13 +779,13 @@ public final class ManagedObjects {
}
private static VisibilityContext createVisibleInteractionContext(
- final ManagedObject adapter,
+ final ManagedObject objectAdapter,
final InteractionInitiatedBy interactionInitiatedBy,
final Where where) {
return new ObjectVisibilityContext(
- adapter,
- adapter.getSpecification().getFeatureIdentifier(),
+ InteractionHead.regular(objectAdapter),
+ objectAdapter.getSpecification().getFeatureIdentifier(),
interactionInitiatedBy,
where);
}
diff --git a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/CollectionContentsSortableDataProvider.java b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/CollectionContentsSortableDataProvider.java
index d0a1443..ce3cb13 100644
--- a/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/CollectionContentsSortableDataProvider.java
+++ b/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/CollectionContentsSortableDataProvider.java
@@ -33,6 +33,7 @@ import org.apache.isis.applib.annotation.Where;
import org.apache.isis.commons.internal.collections._Lists;
import org.apache.isis.core.metamodel.consent.InteractionInitiatedBy;
import org.apache.isis.core.metamodel.consent.InteractionResult;
+import org.apache.isis.core.metamodel.interactions.InteractionHead;
import org.apache.isis.core.metamodel.interactions.InteractionUtils;
import org.apache.isis.core.metamodel.interactions.ObjectVisibilityContext;
import org.apache.isis.core.metamodel.interactions.VisibilityContext;
@@ -58,7 +59,7 @@ public class CollectionContentsSortableDataProvider extends SortableDataProvider
}
@Override
- public IModel<ManagedObject> model(ManagedObject adapter) {
+ public IModel<ManagedObject> model(final ManagedObject adapter) {
return EntityModel.ofAdapter(model.getCommonContext(), adapter);
}
@@ -133,19 +134,21 @@ public class CollectionContentsSortableDataProvider extends SortableDataProvider
private Predicate<ManagedObject> ignoreHidden() {
return new Predicate<ManagedObject>() {
@Override
- public boolean test(ManagedObject input) {
+ public boolean test(final ManagedObject objectAdapter) {
final InteractionResult visibleResult =
InteractionUtils.isVisibleResult(
- input.getSpecification(),
- createVisibleInteractionContext(input));
+ objectAdapter.getSpecification(),
+ createVisibleInteractionContext(objectAdapter));
return visibleResult.isNotVetoing();
}
};
}
- private VisibilityContext createVisibleInteractionContext(ManagedObject objectAdapter) {
+ private VisibilityContext createVisibleInteractionContext(final ManagedObject objectAdapter) {
return new ObjectVisibilityContext(
- objectAdapter, objectAdapter.getSpecification().getFeatureIdentifier(), InteractionInitiatedBy.USER,
+ InteractionHead.regular(objectAdapter),
+ objectAdapter.getSpecification().getFeatureIdentifier(),
+ InteractionInitiatedBy.USER,
Where.ALL_TABLES);
}