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/09/08 13:53:55 UTC

[isis] branch master updated: ISIS-2774: method finder overhaul (7)

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 25137fc  ISIS-2774: method finder overhaul (7)
25137fc is described below

commit 25137fc98c7a984cca046732ee00152aeab52f99
Author: Andi Huber <ah...@apache.org>
AuthorDate: Wed Sep 8 15:53:45 2021 +0200

    ISIS-2774: method finder overhaul (7)
---
 .../method/DescribedAsFacetForMemberViaMethodFactory.java     |  4 ++--
 .../method/DisableForContextFacetViaMethodFactory.java        |  4 ++--
 .../named/method/NamedFacetForMemberViaMethodFactory.java     |  4 ++--
 .../object/choices/enums/EnumValueSemanticsProvider.java      |  4 ++--
 .../facets/object/support/ObjectSupportFacetFactory.java      |  8 ++++----
 .../facets/properties/update/PropertySetterFacetFactory.java  |  4 ++--
 .../method/PropertyValidateFacetViaMethodFactory.java         |  4 ++--
 .../org/apache/isis/core/metamodel/methods/MethodFinder.java  | 11 -----------
 8 files changed, 16 insertions(+), 27 deletions(-)

diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/members/described/method/DescribedAsFacetForMemberViaMethodFactory.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/members/described/method/DescribedAsFacetForMemberViaMethodFactory.java
index 3a29c74..26f1dd3 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/members/described/method/DescribedAsFacetForMemberViaMethodFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/members/described/method/DescribedAsFacetForMemberViaMethodFactory.java
@@ -42,9 +42,9 @@ extends MemberSupportFacetFactoryAbstract {
             final MethodFinderOptions methodFinderOptions) {
 
         MethodFinder
-        .findMethod_returningCategory(
+        .findMethod_returningAnyOf(
                 methodFinderOptions,
-                ReturnTypeCategory.TRANSLATABLE,
+                ReturnTypeCategory.TRANSLATABLE.getReturnTypes(),
                 NO_ARG)
         .peek(processMethodContext::removeMethod)
         .forEach(describedMethod->{
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/members/disabled/method/DisableForContextFacetViaMethodFactory.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/members/disabled/method/DisableForContextFacetViaMethodFactory.java
index 59ec3d6..6ad8101 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/members/disabled/method/DisableForContextFacetViaMethodFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/members/disabled/method/DisableForContextFacetViaMethodFactory.java
@@ -42,9 +42,9 @@ extends MemberSupportFacetFactoryAbstract  {
             final MethodFinderOptions methodFinderOptions) {
 
          MethodFinder
-         .findMethod_returningCategory(
+         .findMethod_returningAnyOf(
                  methodFinderOptions,
-                 ReturnTypeCategory.TRANSLATABLE,
+                 ReturnTypeCategory.TRANSLATABLE.getReturnTypes(),
                  NO_ARG)
          .peek(processMethodContext::removeMethod)
          .forEach(disableMethod->{
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/members/named/method/NamedFacetForMemberViaMethodFactory.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/members/named/method/NamedFacetForMemberViaMethodFactory.java
index c515191..b5dd822 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/members/named/method/NamedFacetForMemberViaMethodFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/members/named/method/NamedFacetForMemberViaMethodFactory.java
@@ -42,9 +42,9 @@ extends MemberSupportFacetFactoryAbstract {
             final MethodFinderOptions methodFinderOptions) {
 
         MethodFinder
-        .findMethod_returningCategory(
+        .findMethod_returningAnyOf(
                 methodFinderOptions,
-                ReturnTypeCategory.TRANSLATABLE,
+                ReturnTypeCategory.TRANSLATABLE.getReturnTypes(),
                 NO_ARG)
         .peek(processMethodContext::removeMethod)
         .forEach(namedMethod->{
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/choices/enums/EnumValueSemanticsProvider.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/choices/enums/EnumValueSemanticsProvider.java
index 525bd6b..fab1d21 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/choices/enums/EnumValueSemanticsProvider.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/choices/enums/EnumValueSemanticsProvider.java
@@ -82,13 +82,13 @@ implements EnumFacet {
         val supportMethodEnum = ObjectSupportMethod.TITLE;
 
         titleMethod = MethodFinder
-        .findMethod_returningCategory(
+        .findMethod_returningAnyOf(
                 MethodFinderOptions
                 .objectSupport(
                         getAdaptedClass(),
                         supportMethodEnum.getMethodNames(),
                         introspectionPolicy),
-                supportMethodEnum.getReturnTypeCategory(),
+                supportMethodEnum.getReturnTypeCategory().getReturnTypes(),
                 null)
         .findFirst()
         .orElse(null);
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/support/ObjectSupportFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/support/ObjectSupportFacetFactory.java
index 12a5e88..714f430 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/support/ObjectSupportFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/support/ObjectSupportFacetFactory.java
@@ -113,11 +113,11 @@ extends MethodPrefixBasedFacetFactoryAbstract {
         val toString = ObjectSupportMethod.TO_STRING;
 
         MethodFinder
-        .findMethod_returningCategory(
+        .findMethod_returningAnyOf(
                 MethodFinderOptions.publicOnly(
                         processClassContext.getCls(),
                         toString.getMethodNames()),
-                toString.getReturnTypeCategory(),
+                toString.getReturnTypeCategory().getReturnTypes(),
                 NO_ARG)
         .peek(processClassContext::removeMethod)
         .forEach(method->{
@@ -133,13 +133,13 @@ extends MethodPrefixBasedFacetFactoryAbstract {
             final BiFunction<Method, FacetHolder, Optional<? extends Facet>> ojectSupportFacetConstructor) {
 
         MethodFinder
-        .findMethod_returningCategory(
+        .findMethod_returningAnyOf(
                 MethodFinderOptions
                 .objectSupport(
                         processClassContext.getCls(),
                         objectSupportMethodEnum.getMethodNames(),
                         processClassContext.getIntrospectionPolicy()),
-                objectSupportMethodEnum.getReturnTypeCategory(),
+                objectSupportMethodEnum.getReturnTypeCategory().getReturnTypes(),
                 NO_ARG)
         .peek(processClassContext::removeMethod)
         .forEach(method->{
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/update/PropertySetterFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/update/PropertySetterFacetFactory.java
index ed4fcb1..4f1ba84 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/update/PropertySetterFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/update/PropertySetterFacetFactory.java
@@ -64,10 +64,10 @@ extends MethodPrefixBasedFacetFactoryAbstract {
         final Class<?>[] paramTypes = new Class[] { getterMethod.getReturnType() };
 
         val setterMethods = MethodFinder
-        .findMethod_returningCategory(
+        .findMethod_returningAnyOf(
                 MethodFinderOptions
                 .accessor(processMethodContext.getCls(), methodNameCandidates, processMethodContext.getIntrospectionPolicy()),
-                ReturnTypeCategory.VOID,
+                ReturnTypeCategory.VOID.getReturnTypes(),
                 paramTypes)
         .peek(processMethodContext::removeMethod)
         .collect(Can.toCan());
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/validating/method/PropertyValidateFacetViaMethodFactory.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/validating/method/PropertyValidateFacetViaMethodFactory.java
index 1f52d60..91b23c9 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/validating/method/PropertyValidateFacetViaMethodFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/validating/method/PropertyValidateFacetViaMethodFactory.java
@@ -47,9 +47,9 @@ extends MemberSupportFacetFactoryAbstract  {
         val argType = getterMethod.getReturnType();
 
         MethodFinder
-        .findMethod_returningCategory(
+        .findMethod_returningAnyOf(
                 methodFinderOptions,
-                ReturnTypeCategory.TRANSLATABLE,
+                ReturnTypeCategory.TRANSLATABLE.getReturnTypes(),
                 new Class[] { argType })
         .peek(processMethodContext::removeMethod)
         .forEach(validateMethod->{
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/methods/MethodFinder.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/methods/MethodFinder.java
index 3f02fc8..1ee8e9a 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/methods/MethodFinder.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/methods/MethodFinder.java
@@ -23,7 +23,6 @@ import java.util.function.Predicate;
 import java.util.stream.Stream;
 
 import org.apache.isis.commons.collections.Can;
-import org.apache.isis.core.config.progmodel.ProgrammingModelConstants.ReturnTypeCategory;
 
 /**
  * Support of multiple concurrent naming conventions.
@@ -60,14 +59,4 @@ public final class MethodFinder {
                 .filter(hasReturnTypeAnyOf(anyOfReturnTypes));
     }
 
-    @Deprecated
-    public static Stream<Method> findMethod_returningCategory(
-            final MethodFinderOptions options,
-            final ReturnTypeCategory returnTypeCategory,
-            final Class<?>[] signature) {
-
-        return options.streamMethodsMatchingSignature(signature)
-                .filter(hasReturnTypeAnyOf(returnTypeCategory.getReturnTypes()));
-    }
-
 }