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 4033e736ba ISIS-3309: pagesize facet precedence fixes (2)
4033e736ba is described below
commit 4033e736ba6b95f16a5ab099b113aec95382226f
Author: Andi Huber <[email protected]>
AuthorDate: Wed Jan 11 13:50:40 2023 +0100
ISIS-3309: pagesize facet precedence fixes (2)
---
.../causeway/core/metamodel/spec/feature/ObjectMember.java | 10 +++++++---
1 file changed, 7 insertions(+), 3 deletions(-)
diff --git
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/spec/feature/ObjectMember.java
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/spec/feature/ObjectMember.java
index b98f7b7224..b0f9903f88 100644
---
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/spec/feature/ObjectMember.java
+++
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/spec/feature/ObjectMember.java
@@ -37,6 +37,7 @@ import
org.apache.causeway.commons.internal.factory._InstanceUtil;
import org.apache.causeway.core.metamodel.consent.Consent;
import org.apache.causeway.core.metamodel.consent.InteractionInitiatedBy;
import org.apache.causeway.core.metamodel.facetapi.FacetHolder;
+import org.apache.causeway.core.metamodel.facetapi.FacetUtil;
import org.apache.causeway.core.metamodel.facets.all.hide.HiddenFacet;
import
org.apache.causeway.core.metamodel.facets.collections.sortedby.SortedByFacet;
import
org.apache.causeway.core.metamodel.facets.members.layout.group.LayoutGroupFacet;
@@ -242,10 +243,13 @@ public interface ObjectMember extends ObjectFeature {
// -- COLLECTION PAGE SIZE (COLL + NON-SCALAR ACTION RESULT)
+ /**
+ * @apiNote in theory should never return empty, as there are supposed to
be fallback {@link PagedFacet}s
+ * installed originating from configuration
+ */
default OptionalInt getPageSize() {
- return Stream.of(this, getElementType())
- .map(facetHolder->facetHolder.getFacet(PagedFacet.class))
- .filter(_NullSafe::isPresent)
+ return FacetUtil.lookupFacetIn(PagedFacet.class, this,
getElementType())
+ .stream()
.mapToInt(PagedFacet::value)
.findFirst();
}