You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by da...@apache.org on 2019/12/03 12:28:46 UTC

[isis] 05/07: ISIS-2196: now ignores static methods during introspection

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

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

commit 11daa74f767000eaeb501bd40a8435cd281e473c
Author: danhaywood <da...@haywood-associates.co.uk>
AuthorDate: Tue Dec 3 11:07:19 2019 +0000

    ISIS-2196: now ignores static methods during introspection
    
    ... allowing MethodScope enum to be removed
---
 .../apache/isis/metamodel/commons/MethodUtil.java  | 47 ++++++-----------
 .../isis/metamodel/facetapi/MethodRemover.java     | 14 +----
 .../apache/isis/metamodel/facets/Annotations.java  |  6 +--
 .../apache/isis/metamodel/facets/FacetFactory.java | 17 +++---
 .../isis/metamodel/facets/MethodFinderUtils.java   | 36 +++++--------
 .../metamodel/facets/MethodRemoverConstants.java   |  5 +-
 .../ActionDefaultsFacetViaMethodFactory.java       |  3 +-
 .../ActionValidationFacetViaMethodFactory.java     | 11 ++--
 .../CollectionAccessorFacetViaAccessorFactory.java |  2 -
 .../clear/CollectionClearFacetFactory.java         |  3 +-
 ...tionAddToRemoveFromAndValidateFacetFactory.java |  9 ++--
 .../DisableForContextFacetViaMethodFactory.java    |  5 +-
 .../HideForContextFacetViaMethodFactory.java       |  5 +-
 .../callbacks/CreatedCallbackFacetFactory.java     |  3 +-
 .../object/callbacks/LoadCallbackFacetFactory.java |  5 +-
 .../callbacks/PersistCallbackFacetFactory.java     |  5 +-
 .../PersistCallbackViaSaveMethodFacetFactory.java  |  5 +-
 .../callbacks/RemoveCallbackFacetFactory.java      |  5 +-
 .../RemoveCallbackViaDeleteMethodFacetFactory.java |  5 +-
 .../callbacks/UpdateCallbackFacetFactory.java      |  5 +-
 .../choices/enums/EnumValueSemanticsProvider.java  |  4 +-
 .../method/CssClassFacetMethodFactory.java         |  3 +-
 .../DisabledObjectFacetViaMethodFactory.java       |  3 +-
 .../method/HiddenObjectFacetViaMethodFactory.java  |  3 +-
 .../object/icon/method/IconFacetMethodFactory.java |  3 +-
 ...oveDatanucleusPersistableTypesFacetFactory.java |  3 +-
 .../javalang/IteratorFilteringFacetFactory.java    |  3 +-
 .../ignore/javalang/RemoveMethodsFacetFactory.java |  5 +-
 .../jdo/RemoveJdoEnhancementTypesFacetFactory.java |  3 +-
 .../facets/object/layout/LayoutFacetFactory.java   |  3 +-
 .../annotation/TitleAnnotationFacetFactory.java    |  5 +-
 .../title/methods/TitleFacetViaMethodsFactory.java |  5 +-
 .../method/ValidateObjectFacetMethodFactory.java   |  3 +-
 ...ParameterAutoCompleteFacetViaMethodFactory.java |  6 +--
 .../method/ActionChoicesFacetViaMethodFactory.java |  5 +-
 ...ctionParameterChoicesFacetViaMethodFactory.java |  3 +-
 ...tionParameterDefaultsFacetViaMethodFactory.java |  6 +--
 ...tionParameterDisabledFacetViaMethodFactory.java |  8 ++-
 ...ActionParameterHiddenFacetViaMethodFactory.java |  8 ++-
 ...onParameterValidationFacetViaMethodFactory.java |  8 ++-
 .../PropertyAccessorFacetViaAccessorFactory.java   |  3 +-
 .../PropertyAutoCompleteFacetMethodFactory.java    |  3 +-
 .../PropertyChoicesFacetViaMethodFactory.java      |  3 +-
 .../PropertyDefaultFacetViaMethodFactory.java      |  3 +-
 .../update/PropertyModifyFacetFactory.java         |  3 +-
 .../update/PropertySetAndClearFacetFactory.java    |  5 +-
 .../PropertyValidateFacetViaMethodFactory.java     |  3 +-
 .../isis/metamodel/methodutils/MethodScope.java    | 57 --------------------
 .../specloader/specimpl/FacetedMethodsBuilder.java | 38 +++++---------
 .../metamodel/facets/MethodRemoverForTesting.java  | 20 ++------
 .../runtime/system/ObjectMemberAbstractTest.java   | 60 +++-------------------
 .../isis/runtime/system/MethodFinderUtilsTest.java | 53 -------------------
 52 files changed, 137 insertions(+), 400 deletions(-)

diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/commons/MethodUtil.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/commons/MethodUtil.java
index 186c9cb..7535b73 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/commons/MethodUtil.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/commons/MethodUtil.java
@@ -19,17 +19,14 @@
 
 package org.apache.isis.metamodel.commons;
 
+import lombok.val;
+
 import java.lang.reflect.Method;
 import java.lang.reflect.Modifier;
 import java.util.Collection;
-import java.util.List;
 import java.util.Set;
 import java.util.function.Consumer;
 
-import org.apache.isis.metamodel.methodutils.MethodScope;
-
-import lombok.val;
-
 public class MethodUtil {
 
     private MethodUtil(){}
@@ -46,22 +43,17 @@ public class MethodUtil {
      * <p>
      * Any methods that do not meet the search criteria are left in the array of
      * methods.
-     *
-     * <p>
-     * The search algorithm is as specified in
-     * {@link MethodUtil#findMethodIndex(List, MethodScope, String, Class, Class[])}.
      */
     public static Method removeMethod(
-            final Set<Method> methods, 
-            final MethodScope methodScope, 
-            final String name, 
-            final Class<?> returnType, 
+            final Set<Method> methods,
+            final String name,
+            final Class<?> returnType,
             final Class<?>[] paramTypes) {
         
         val methodIterator = methods.iterator();
         while(methodIterator.hasNext()) {
             val method = methodIterator.next();
-            if(matches(method, methodScope, name, returnType, paramTypes)){
+            if(matches(method, name, returnType, paramTypes)){
                 methodIterator.remove();
                 return method;
             }
@@ -85,10 +77,9 @@ public class MethodUtil {
      * If the returnType is specified as null then the return type is ignored.
      */
     private static boolean matches(
-            final Method method, 
-            final MethodScope methodScope, 
-            final String name, 
-            final Class<?> returnType, 
+            final Method method,
+            final String name,
+            final Class<?> returnType,
             final Class<?>[] paramTypes) {
         
         final int modifiers = method.getModifiers();
@@ -98,8 +89,7 @@ public class MethodUtil {
             return false;
         }
 
-        // check for static modifier
-        if (!inScope(method, methodScope)) {
+        if (isStatic(method)) {
             return false;
         }
 
@@ -130,10 +120,6 @@ public class MethodUtil {
         return true;
     }
 
-    public static boolean inScope(final Method extendee, final MethodScope methodScope) {
-        final boolean isStatic = MethodExtensions.isStatic(extendee);
-        return isStatic && methodScope == MethodScope.CLASS || !isStatic && methodScope == MethodScope.OBJECT;
-    }
 
     /**
      * Searches the supplied array of methods for all specific methods and
@@ -158,14 +144,12 @@ public class MethodUtil {
      * @param paramTypes
      *            the set of parameters the method should have, if null then is
      *            ignored
-     * @param forClass
      * @param returnType
      * @param canBeVoid
      * @return Method
      */
     public static void removeMethods(
             Set<Method> methods,
-            MethodScope forClass,
             String prefix,
             Class<?> returnType,
             CanBeVoid canBeVoid,
@@ -173,20 +157,19 @@ public class MethodUtil {
             Consumer<Method> onMatch) {
 
         methods.removeIf(method -> 
-            matches(method, forClass, prefix, returnType, canBeVoid, paramCount, onMatch));
+            matches(method, prefix, returnType, canBeVoid, paramCount, onMatch));
         
     }
 
     private static boolean matches(
             Method method,
-            MethodScope forClass,
             String prefix,
             Class<?> returnType,
             CanBeVoid canBeVoid,
             int paramCount,
             Consumer<Method> onMatch) {
 
-        if (!inScope(method, forClass)) {
+        if (isStatic(method)) {
             return false;
         }
 
@@ -205,5 +188,9 @@ public class MethodUtil {
     }
 
 
-
+    public static boolean isStatic(final Method method) {
+        final int modifiers = method.getModifiers();
+        final boolean isStatic = Modifier.isStatic(modifiers);
+        return isStatic;
+    }
 }
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facetapi/MethodRemover.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facetapi/MethodRemover.java
index 493c025..3796eb6 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facetapi/MethodRemover.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facetapi/MethodRemover.java
@@ -23,7 +23,6 @@ import java.lang.reflect.Method;
 import java.util.function.Consumer;
 
 import org.apache.isis.metamodel.commons.CanBeVoid;
-import org.apache.isis.metamodel.methodutils.MethodScope;
 
 /**
  * Removes the methods from further processing by subsequent {@link Facet}s.
@@ -34,14 +33,10 @@ public interface MethodRemover {
      * Locate all methods (that the implementation should somehow know about)
      * that match the criteria and remove them from the implementation's list so
      * that they are not considered for subsequent scans.
-     * @param methodScope
-     *            - whether looking for <tt>static</tt> (class) or
-     *            instance-level methods.
      * @param canBeVoid
      * @param onRemoval receives any methods that were removed
      */
     void removeMethods(
-            MethodScope methodScope,
             String prefix,
             Class<?> returnType,
             CanBeVoid canBeVoid,
@@ -51,13 +46,12 @@ public interface MethodRemover {
 
     /*variant with noop consumer*/
     default void removeMethods(
-            MethodScope methodScope,
             String prefix,
             Class<?> returnType,
             CanBeVoid canBeVoid,
             int paramCount) {
         
-        removeMethods(methodScope, prefix, returnType, canBeVoid, paramCount, removedMethod -> {});
+        removeMethods(prefix, returnType, canBeVoid, paramCount, removedMethod -> {});
     }
     
     
@@ -66,13 +60,9 @@ public interface MethodRemover {
      * that match the criteria and remove them from the implementation's list so
      * that they are not considered for subsequent scans.
      *
-     * @param methodScope
-     *            - whether looking for <tt>static</tt> (class) or
-     *            instance-level methods.
      */
     void removeMethod(
-            MethodScope methodScope, 
-            String methodName, 
+            String methodName,
             Class<?> returnType,
             Class<?>[] parameterTypes);
 
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/Annotations.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/Annotations.java
index a3160ae..80b939e 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/Annotations.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/Annotations.java
@@ -49,9 +49,9 @@ import org.apache.isis.commons.internal.collections._Lists;
 import org.apache.isis.commons.internal.collections._Sets;
 import org.apache.isis.commons.internal.reflection._Annotations;
 import org.apache.isis.commons.internal.reflection._Reflect;
+import org.apache.isis.metamodel.commons.MethodUtil;
 import org.apache.isis.metamodel.commons.ThrowableExtensions;
 import org.apache.isis.metamodel.exceptions.MetaModelException;
-import org.apache.isis.metamodel.methodutils.MethodScope;
 
 import static org.apache.isis.commons.internal.base._NullSafe.stream;
 
@@ -415,8 +415,8 @@ public final class Annotations  {
             final Consumer<Evaluator<T>> visitor) {
 
         for (Method method : cls.getDeclaredMethods()) {
-            if(MethodScope.OBJECT.matchesScopeOf(method) &&
-                    method.getParameterTypes().length == 0) {
+            if(! MethodUtil.isStatic(method) &&
+                 method.getParameterTypes().length == 0) {
                 final Annotation annotation = method.getAnnotation(annotationClass);
                 if(annotation != null) {
                     visitor.accept(new MethodEvaluator(method, annotation));
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/FacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/FacetFactory.java
index eeb6f73..7a02c39 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/FacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/FacetFactory.java
@@ -34,7 +34,6 @@ import org.apache.isis.metamodel.facetapi.Facet;
 import org.apache.isis.metamodel.facetapi.FacetHolder;
 import org.apache.isis.metamodel.facetapi.FeatureType;
 import org.apache.isis.metamodel.facetapi.MethodRemover;
-import org.apache.isis.metamodel.methodutils.MethodScope;
 
 import lombok.Getter;
 
@@ -114,13 +113,13 @@ public interface FacetFactory {
 
 
         @Override
-        public void removeMethods(final MethodScope methodScope, final String prefix, final Class<?> returnType, final CanBeVoid canBeVoid, final int paramCount, Consumer<Method> onRemoval) {
-            methodRemover.removeMethods(methodScope, prefix, returnType, canBeVoid, paramCount, onRemoval);
+        public void removeMethods(final String prefix, final Class<?> returnType, final CanBeVoid canBeVoid, final int paramCount, Consumer<Method> onRemoval) {
+            methodRemover.removeMethods(prefix, returnType, canBeVoid, paramCount, onRemoval);
         }
 
         @Override
-        public void removeMethod(final MethodScope methodScope, final String methodName, final Class<?> returnType, final Class<?>[] parameterTypes) {
-            methodRemover.removeMethod(methodScope, methodName, returnType, parameterTypes);
+        public void removeMethod(final String methodName, final Class<?> returnType, final Class<?>[] parameterTypes) {
+            methodRemover.removeMethod(methodName, returnType, parameterTypes);
         }
 
         @Override
@@ -172,13 +171,13 @@ public interface FacetFactory {
         }
 
         @Override
-        public void removeMethods(final MethodScope methodScope, final String prefix, final Class<?> returnType, final CanBeVoid canBeVoid, final int paramCount, Consumer<Method> onRemoval) {
-            methodRemover.removeMethods(methodScope, prefix, returnType, canBeVoid, paramCount, onRemoval);
+        public void removeMethods(final String prefix, final Class<?> returnType, final CanBeVoid canBeVoid, final int paramCount, Consumer<Method> onRemoval) {
+            methodRemover.removeMethods(prefix, returnType, canBeVoid, paramCount, onRemoval);
         }
 
         @Override
-        public void removeMethod(final MethodScope methodScope, final String methodName, final Class<?> returnType, final Class<?>[] parameterTypes) {
-            methodRemover.removeMethod(methodScope, methodName, returnType, parameterTypes);
+        public void removeMethod(final String methodName, final Class<?> returnType, final Class<?>[] parameterTypes) {
+            methodRemover.removeMethod(methodName, returnType, parameterTypes);
         }
 
     }
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/MethodFinderUtils.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/MethodFinderUtils.java
index 6cc31d7..440ced1 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/MethodFinderUtils.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/MethodFinderUtils.java
@@ -26,8 +26,8 @@ import java.util.List;
 import java.util.Map;
 import java.util.Optional;import org.apache.isis.applib.services.i18n.TranslatableString;
 import org.apache.isis.commons.internal.reflection._MethodCache;
+import org.apache.isis.metamodel.commons.MethodUtil;
 import org.apache.isis.metamodel.facetapi.MethodRemover;
-import org.apache.isis.metamodel.methodutils.MethodScope;
 
 import lombok.val;
 
@@ -36,10 +36,10 @@ public final class MethodFinderUtils {
     private MethodFinderUtils() {
     }
 
-    public static Method findMethodWithOrWithoutParameters(final Class<?> type, final MethodScope classMethod, final String name, final Class<?> returnType, final Class<?>[] paramTypes) {
-        Method method = MethodFinderUtils.findMethod(type, classMethod, name, returnType, paramTypes);
+    public static Method findMethodWithOrWithoutParameters(final Class<?> type, final String name, final Class<?> returnType, final Class<?>[] paramTypes) {
+        Method method = MethodFinderUtils.findMethod(type, name, returnType, paramTypes);
         if (method == null) {
-            method = MethodFinderUtils.findMethod(type, classMethod, name, returnType, MethodPrefixBasedFacetFactoryAbstract.NO_PARAMETERS_TYPES);
+            method = MethodFinderUtils.findMethod(type, name, returnType, MethodPrefixBasedFacetFactoryAbstract.NO_PARAMETERS_TYPES);
         }
         return method;
     }
@@ -58,12 +58,10 @@ public final class MethodFinderUtils {
      */
     public static Method findMethod(
             final Class<?> type,
-            final MethodScope methodScope,
             final String name,
             final Class<?> returnType,
             final Class<?>[] paramTypes) {
-        
-        
+
         val methodCache = _MethodCache.getInstance();
         
         val method = methodCache.lookupMethod(type, name, paramTypes);
@@ -77,8 +75,7 @@ public final class MethodFinderUtils {
             return null;
         }
 
-        // check for scope modifier
-        if (!methodScope.matchesScopeOf(method)) {
+        if(MethodUtil.isStatic(method)) {
             return null;
         }
 
@@ -109,12 +106,11 @@ public final class MethodFinderUtils {
     public static Method findMethod_returningAnyOf(
             final Class<?>[] returnTypes,
             final Class<?> type,
-            final MethodScope methodScope,
             final String name,
             final Class<?>[] paramTypes) {
         
         for (val returnType : returnTypes) {
-            val method = findMethod(type, methodScope, name, returnType, paramTypes);
+            val method = findMethod(type, name, returnType, paramTypes);
             if(method != null) {
                 return method;
             }
@@ -122,11 +118,7 @@ public final class MethodFinderUtils {
         return null;
     }
 
-    protected static boolean doesNotMatchScope(final MethodScope methodScope, final Method method) {
-        return methodScope.doesNotMatchScope(method);
-    }
-
-    public static Method findMethod(final Class<?> type, final MethodScope methodScope, final String name, final Class<?> returnType) {
+    public static Method findMethod(final Class<?> type, final String name, final Class<?> returnType) {
         try {
             final Method[] methods = type.getMethods();
             for (final Method method2 : methods) {
@@ -137,8 +129,7 @@ public final class MethodFinderUtils {
                     continue;
                 }
 
-                // check correct scope (static vs instance)
-                if (!methodScope.matchesScopeOf(method)) {
+                if(MethodUtil.isStatic(method)) {
                     continue;
                 }
 
@@ -159,18 +150,18 @@ public final class MethodFinderUtils {
         return null;
     }
 
-    public static List<Method> findMethodsWithAnnotation(final Class<?> type, final MethodScope methodScope, final Class<? extends Annotation> annotationClass) {
+    public static List<Method> findMethodsWithAnnotation(final Class<?> type, final Class<? extends Annotation> annotationClass) {
 
         final List<Method> methods = new ArrayList<Method>();
 
         // Validate arguments
-        if ((type == null) || (methodScope == null) || (annotationClass == null)) {
+        if (type == null || annotationClass == null) {
             throw new IllegalArgumentException("One or more arguments are 'null' valued");
         }
 
         // Find methods annotated with the specified annotation
         for (final Method method : type.getMethods()) {
-            if (!methodScope.matchesScopeOf(method)) {
+            if(MethodUtil.isStatic(method)) {
                 continue;
             }
 
@@ -244,10 +235,9 @@ public final class MethodFinderUtils {
     
     public static Method findMethod_returningText(
             final Class<?> type,
-            final MethodScope methodScope,
             final String name,
             final Class<?>[] paramTypes) {
-        return findMethod_returningAnyOf(TEXT_TYPES, type, methodScope, name, paramTypes);
+        return findMethod_returningAnyOf(TEXT_TYPES, type, name, paramTypes);
     }
 
 }
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/MethodRemoverConstants.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/MethodRemoverConstants.java
index 7a29d84..90364b7 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/MethodRemoverConstants.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/MethodRemoverConstants.java
@@ -24,17 +24,16 @@ import java.util.function.Consumer;
 
 import org.apache.isis.metamodel.commons.CanBeVoid;
 import org.apache.isis.metamodel.facetapi.MethodRemover;
-import org.apache.isis.metamodel.methodutils.MethodScope;
 
 public class MethodRemoverConstants {
 
     public static MethodRemover NOOP = new MethodRemover() {
         @Override
-        public void removeMethods(final MethodScope methodScope, final String prefix, final Class<?> returnType, final CanBeVoid canBeVoid, final int paramCount, Consumer<Method> onRemoval) {
+        public void removeMethods(final String prefix, final Class<?> returnType, final CanBeVoid canBeVoid, final int paramCount, Consumer<Method> onRemoval) {
         }
 
         @Override
-        public void removeMethod(final MethodScope methodScope, final String methodName, final Class<?> returnType, final Class<?>[] parameterTypes) {
+        public void removeMethod(final String methodName, final Class<?> returnType, final Class<?>[] parameterTypes) {
         }
 
         @Override
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/actions/defaults/method/ActionDefaultsFacetViaMethodFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/actions/defaults/method/ActionDefaultsFacetViaMethodFactory.java
index ba06ee0..2331e6b 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/actions/defaults/method/ActionDefaultsFacetViaMethodFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/actions/defaults/method/ActionDefaultsFacetViaMethodFactory.java
@@ -30,7 +30,6 @@ import org.apache.isis.metamodel.facetapi.FeatureType;
 import org.apache.isis.metamodel.facets.MethodFinderUtils;
 import org.apache.isis.metamodel.facets.MethodLiteralConstants;
 import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
-import org.apache.isis.metamodel.methodutils.MethodScope;
 
 /**
  * Sets up all the {@link Facet}s for an action in a single shot.
@@ -82,7 +81,7 @@ public class ActionDefaultsFacetViaMethodFactory extends MethodPrefixBasedFacetF
         final String name = MethodLiteralConstants.DEFAULT_PREFIX + capitalizedName;
 
         final Class<?> cls = processMethodContext.getCls();
-        return MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, name, returnType, _Constants.emptyClasses);
+        return MethodFinderUtils.findMethod(cls, name, returnType, _Constants.emptyClasses);
     }
 
 }
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/actions/validate/method/ActionValidationFacetViaMethodFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/actions/validate/method/ActionValidationFacetViaMethodFactory.java
index 55e023c..a951854 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/actions/validate/method/ActionValidationFacetViaMethodFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/actions/validate/method/ActionValidationFacetViaMethodFactory.java
@@ -19,6 +19,8 @@
 
 package org.apache.isis.metamodel.facets.actions.validate.method;
 
+import lombok.val;
+
 import java.lang.reflect.Method;
 
 import org.apache.isis.applib.services.i18n.TranslationService;
@@ -30,9 +32,6 @@ import org.apache.isis.metamodel.facets.MethodFinderUtils;
 import org.apache.isis.metamodel.facets.MethodLiteralConstants;
 import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
 import org.apache.isis.metamodel.facets.actions.validate.ActionValidationFacet;
-import org.apache.isis.metamodel.methodutils.MethodScope;
-
-import lombok.val;
 
 /**
  * Sets up {@link ActionValidationFacet}.
@@ -66,10 +65,9 @@ public class ActionValidationFacetViaMethodFactory extends MethodPrefixBasedFace
 
         final String capitalizedName = StringExtensions.asCapitalizedName(actionMethod.getName());
         final Class<?>[] paramTypes = actionMethod.getParameterTypes();
-        final MethodScope onClass = MethodScope.scopeFor(actionMethod);
 
         final Method validateMethod = MethodFinderUtils.findMethod_returningText(
-                cls, onClass,
+                cls,
                 MethodLiteralConstants.VALIDATE_PREFIX + capitalizedName,
                 paramTypes);
         if (validateMethod == null) {
@@ -94,11 +92,10 @@ public class ActionValidationFacetViaMethodFactory extends MethodPrefixBasedFace
         final IdentifiedHolder facetHolder = processParameterContext.getFacetHolder();
 
         final String capitalizedName = StringExtensions.asCapitalizedName(actionMethod.getName());
-        final MethodScope onClass = MethodScope.scopeFor(actionMethod);
 
         final String validateName = MethodLiteralConstants.VALIDATE_PREFIX + paramNum + capitalizedName;
         final Method validateMethod = MethodFinderUtils.findMethod_returningText(
-                cls, onClass,
+                cls,
                 validateName,
                 new Class<?>[]{paramType});
         if (validateMethod == null) {
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/collections/accessor/CollectionAccessorFacetViaAccessorFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/collections/accessor/CollectionAccessorFacetViaAccessorFactory.java
index 1ea5042..4ba2d0e 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/collections/accessor/CollectionAccessorFacetViaAccessorFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/collections/accessor/CollectionAccessorFacetViaAccessorFactory.java
@@ -30,7 +30,6 @@ import org.apache.isis.metamodel.facetapi.MethodRemover;
 import org.apache.isis.metamodel.facets.MethodLiteralConstants;
 import org.apache.isis.metamodel.facets.PropertyOrCollectionIdentifyingFacetFactoryAbstract;
 import org.apache.isis.metamodel.facets.collparam.semantics.CollectionSemanticsFacetDefault;
-import org.apache.isis.metamodel.methodutils.MethodScope;
 import org.apache.isis.metamodel.spec.ObjectSpecification;
 
 public class CollectionAccessorFacetViaAccessorFactory
@@ -96,7 +95,6 @@ extends PropertyOrCollectionIdentifyingFacetFactoryAbstract {
             final List<Method> methodListToAppendTo) {
 
         methodRemover.removeMethods(
-                MethodScope.OBJECT, 
                 MethodLiteralConstants.GET_PREFIX,
                 Collection.class,
                 CanBeVoid.FALSE,
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/collections/clear/CollectionClearFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/collections/clear/CollectionClearFacetFactory.java
index 94e4986..93dd8b9 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/collections/clear/CollectionClearFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/collections/clear/CollectionClearFacetFactory.java
@@ -28,7 +28,6 @@ import org.apache.isis.metamodel.facets.MethodFinderUtils;
 import org.apache.isis.metamodel.facets.MethodLiteralConstants;
 import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
 import org.apache.isis.metamodel.facets.collections.modify.CollectionClearFacet;
-import org.apache.isis.metamodel.methodutils.MethodScope;
 
 public class CollectionClearFacetFactory extends MethodPrefixBasedFacetFactoryAbstract {
 
@@ -51,7 +50,7 @@ public class CollectionClearFacetFactory extends MethodPrefixBasedFacetFactoryAb
         final String capitalizedName = StringExtensions.asJavaBaseName(getMethod.getName());
 
         final Class<?> cls = processMethodContext.getCls();
-        final Method method = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, MethodLiteralConstants.CLEAR_PREFIX + capitalizedName, void.class, null);
+        final Method method = MethodFinderUtils.findMethod(cls, MethodLiteralConstants.CLEAR_PREFIX + capitalizedName, void.class, null);
         processMethodContext.removeMethod(method);
 
         final FacetHolder collection = processMethodContext.getFacetHolder();
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/collections/modify/CollectionAddToRemoveFromAndValidateFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/collections/modify/CollectionAddToRemoveFromAndValidateFacetFactory.java
index ad28498..cd21d10 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/collections/modify/CollectionAddToRemoveFromAndValidateFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/collections/modify/CollectionAddToRemoveFromAndValidateFacetFactory.java
@@ -33,7 +33,6 @@ import org.apache.isis.metamodel.facets.MethodLiteralConstants;
 import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
 import org.apache.isis.metamodel.facets.collections.validate.CollectionValidateAddToFacetViaMethod;
 import org.apache.isis.metamodel.facets.collections.validate.CollectionValidateRemoveFromFacetViaMethod;
-import org.apache.isis.metamodel.methodutils.MethodScope;
 
 /**
  * TODO: should probably split out into two {@link FacetFactory}s, one for
@@ -64,11 +63,11 @@ public class CollectionAddToRemoveFromAndValidateFacetFactory extends MethodPref
         final Class<?> cls = processMethodContext.getCls();
 
         // add
-        final Method addToMethod = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, MethodLiteralConstants.ADD_TO_PREFIX + capitalizedName, void.class);
+        final Method addToMethod = MethodFinderUtils.findMethod(cls, MethodLiteralConstants.ADD_TO_PREFIX + capitalizedName, void.class);
         processMethodContext.removeMethod(addToMethod);
 
         // remove
-        final Method removeFromMethod = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, MethodLiteralConstants.REMOVE_FROM_PREFIX + capitalizedName, void.class);
+        final Method removeFromMethod = MethodFinderUtils.findMethod(cls, MethodLiteralConstants.REMOVE_FROM_PREFIX + capitalizedName, void.class);
         processMethodContext.removeMethod(removeFromMethod);
 
         // add facets
@@ -133,7 +132,7 @@ public class CollectionAddToRemoveFromAndValidateFacetFactory extends MethodPref
         final Class<?> cls = processMethodContext.getCls();
         final Class<?>[] paramTypes = MethodFinderUtils.paramTypesOrNull(collectionType);
         Method validateAddToMethod = MethodFinderUtils.findMethod_returningText(
-                cls, MethodScope.OBJECT,
+                cls,
                 MethodLiteralConstants.VALIDATE_ADD_TO_PREFIX + capitalizedName,
                 paramTypes);
         if (validateAddToMethod == null) {
@@ -158,7 +157,7 @@ public class CollectionAddToRemoveFromAndValidateFacetFactory extends MethodPref
         final Class<?> cls = processMethodContext.getCls();
         final Class<?>[] paramTypes = MethodFinderUtils.paramTypesOrNull(collectionType);
         Method validateRemoveFromMethod = MethodFinderUtils.findMethod_returningText(
-                cls, MethodScope.OBJECT,
+                cls,
                 MethodLiteralConstants.VALIDATE_REMOVE_FROM_PREFIX + capitalizedName,
                 paramTypes);
         if (validateRemoveFromMethod == null) {
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/members/disabled/method/DisableForContextFacetViaMethodFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/members/disabled/method/DisableForContextFacetViaMethodFactory.java
index 6c7ef36..957addc 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/members/disabled/method/DisableForContextFacetViaMethodFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/members/disabled/method/DisableForContextFacetViaMethodFactory.java
@@ -30,7 +30,6 @@ import org.apache.isis.metamodel.facetapi.IdentifiedHolder;
 import org.apache.isis.metamodel.facets.MethodFinderUtils;
 import org.apache.isis.metamodel.facets.MethodLiteralConstants;
 import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
-import org.apache.isis.metamodel.methodutils.MethodScope;
 
 public class DisableForContextFacetViaMethodFactory extends MethodPrefixBasedFacetFactoryAbstract  {
 
@@ -68,14 +67,14 @@ public class DisableForContextFacetViaMethodFactory extends MethodPrefixBasedFac
         if(searchExactMatch) {
             // search for exact match
             disableMethod = MethodFinderUtils.findMethod_returningText(
-                    cls, MethodScope.OBJECT,
+                    cls,
                     MethodLiteralConstants.DISABLE_PREFIX + capitalizedName,
                     method.getParameterTypes());
         }
         if (disableMethod == null) {
             // search for no-arg version
             disableMethod = MethodFinderUtils.findMethod_returningText(
-                    cls, MethodScope.OBJECT,
+                    cls,
                     MethodLiteralConstants.DISABLE_PREFIX + capitalizedName,
                     new Class<?>[0]);
         }
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/members/hidden/method/HideForContextFacetViaMethodFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/members/hidden/method/HideForContextFacetViaMethodFactory.java
index 2565b2d..4dd6f31 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/members/hidden/method/HideForContextFacetViaMethodFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/members/hidden/method/HideForContextFacetViaMethodFactory.java
@@ -29,7 +29,6 @@ import org.apache.isis.metamodel.facetapi.FeatureType;
 import org.apache.isis.metamodel.facets.MethodFinderUtils;
 import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
 import org.apache.isis.metamodel.facets.MethodLiteralConstants;
-import org.apache.isis.metamodel.methodutils.MethodScope;
 
 public class HideForContextFacetViaMethodFactory extends MethodPrefixBasedFacetFactoryAbstract {
 
@@ -59,13 +58,13 @@ public class HideForContextFacetViaMethodFactory extends MethodPrefixBasedFacetF
         final String capitalizedName = StringExtensions.asJavaBaseNameStripAccessorPrefixIfRequired(getMethod.getName());
 
         final Class<?> cls = processMethodContext.getCls();
-        Method hideMethod = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, MethodLiteralConstants.HIDE_PREFIX + capitalizedName, boolean.class, new Class[] {});
+        Method hideMethod = MethodFinderUtils.findMethod(cls, MethodLiteralConstants.HIDE_PREFIX + capitalizedName, boolean.class, new Class[] {});
         if (hideMethod == null) {
 
             boolean noParamsOnly = getConfiguration().getReflector().getValidator().isNoParamsOnly();
             boolean searchExactMatch = !noParamsOnly;
             if(searchExactMatch) {
-                hideMethod = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, MethodLiteralConstants.HIDE_PREFIX + capitalizedName, boolean.class, getMethod.getParameterTypes());
+                hideMethod = MethodFinderUtils.findMethod(cls, MethodLiteralConstants.HIDE_PREFIX + capitalizedName, boolean.class, getMethod.getParameterTypes());
             }
         }
 
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/CreatedCallbackFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/CreatedCallbackFacetFactory.java
index 57afb92..ab0f17b 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/CreatedCallbackFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/CreatedCallbackFacetFactory.java
@@ -23,7 +23,6 @@ import org.apache.isis.metamodel.facetapi.FeatureType;
 import org.apache.isis.metamodel.facets.MethodFinderUtils;
 import org.apache.isis.metamodel.facets.MethodLiteralConstants;
 import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
-import org.apache.isis.metamodel.methodutils.MethodScope;
 
 import lombok.val;
 
@@ -40,7 +39,7 @@ public class CreatedCallbackFacetFactory extends MethodPrefixBasedFacetFactoryAb
         val cls = processClassContext.getCls();
         val facetHolder = processClassContext.getFacetHolder();
 
-        val method = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, MethodLiteralConstants.CREATED_PREFIX, void.class, NO_PARAMETERS_TYPES);
+        val method = MethodFinderUtils.findMethod(cls, MethodLiteralConstants.CREATED_PREFIX, void.class, NO_PARAMETERS_TYPES);
         if (method != null) {
             super.addFacet(new CreatedCallbackFacetViaMethod(method, facetHolder));
             processClassContext.removeMethod(method);
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/LoadCallbackFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/LoadCallbackFacetFactory.java
index 58b04c2..77a39e0 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/LoadCallbackFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/LoadCallbackFacetFactory.java
@@ -24,7 +24,6 @@ import java.lang.reflect.Method;
 import org.apache.isis.metamodel.facetapi.FeatureType;
 import org.apache.isis.metamodel.facets.MethodFinderUtils;
 import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
-import org.apache.isis.metamodel.methodutils.MethodScope;
 
 import static org.apache.isis.metamodel.facets.MethodLiteralConstants.LOADED_PREFIX;
 import static org.apache.isis.metamodel.facets.MethodLiteralConstants.LOADING_PREFIX;
@@ -45,13 +44,13 @@ public class LoadCallbackFacetFactory extends MethodPrefixBasedFacetFactoryAbstr
         val facetHolder = processClassContext.getFacetHolder();
 
         Method method = null;
-        method = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, LOADING_PREFIX, void.class, NO_PARAMETERS_TYPES);
+        method = MethodFinderUtils.findMethod(cls, LOADING_PREFIX, void.class, NO_PARAMETERS_TYPES);
         if (method != null) {
             processClassContext.removeMethod(method);
             super.addFacet(new LoadingCallbackFacetViaMethod(method, facetHolder));
         }
 
-        method = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, LOADED_PREFIX, void.class, NO_PARAMETERS_TYPES);
+        method = MethodFinderUtils.findMethod(cls, LOADED_PREFIX, void.class, NO_PARAMETERS_TYPES);
         if (method != null) {
             processClassContext.removeMethod(method);
             super.addFacet(new LoadedCallbackFacetViaMethod(method, facetHolder));
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/PersistCallbackFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/PersistCallbackFacetFactory.java
index 7bac20c..01d329f 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/PersistCallbackFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/PersistCallbackFacetFactory.java
@@ -28,7 +28,6 @@ import org.apache.isis.metamodel.facetapi.FeatureType;
 import org.apache.isis.metamodel.facets.MethodFinderUtils;
 import org.apache.isis.metamodel.facets.MethodLiteralConstants;
 import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
-import org.apache.isis.metamodel.methodutils.MethodScope;
 
 import lombok.val;
 
@@ -47,7 +46,7 @@ public class PersistCallbackFacetFactory extends MethodPrefixBasedFacetFactoryAb
         val facets = new ArrayList<Facet>();
 
         Method method = null;
-        method = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, MethodLiteralConstants.PERSISTING_PREFIX, void.class, NO_PARAMETERS_TYPES);
+        method = MethodFinderUtils.findMethod(cls, MethodLiteralConstants.PERSISTING_PREFIX, void.class, NO_PARAMETERS_TYPES);
         if (method != null) {
             processClassContext.removeMethod(method);
             val facet = facetHolder.getFacet(PersistingCallbackFacet.class);
@@ -58,7 +57,7 @@ public class PersistCallbackFacetFactory extends MethodPrefixBasedFacetFactoryAb
             }
         }
 
-        method = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, MethodLiteralConstants.PERSISTED_PREFIX, void.class, NO_PARAMETERS_TYPES);
+        method = MethodFinderUtils.findMethod(cls, MethodLiteralConstants.PERSISTED_PREFIX, void.class, NO_PARAMETERS_TYPES);
         if (method != null) {
             processClassContext.removeMethod(method);
             val facet = facetHolder.getFacet(PersistedCallbackFacet.class);
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/PersistCallbackViaSaveMethodFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/PersistCallbackViaSaveMethodFacetFactory.java
index 60a15a0..7c3ba46 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/PersistCallbackViaSaveMethodFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/PersistCallbackViaSaveMethodFacetFactory.java
@@ -28,7 +28,6 @@ import org.apache.isis.metamodel.facetapi.FeatureType;
 import org.apache.isis.metamodel.facets.MethodFinderUtils;
 import org.apache.isis.metamodel.facets.MethodLiteralConstants;
 import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
-import org.apache.isis.metamodel.methodutils.MethodScope;
 
 import lombok.val;
 
@@ -47,7 +46,7 @@ public class PersistCallbackViaSaveMethodFacetFactory extends MethodPrefixBasedF
         val facets = new ArrayList<Facet>();
 
         Method method = null;
-        method = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, MethodLiteralConstants.SAVING_PREFIX, void.class, NO_PARAMETERS_TYPES);
+        method = MethodFinderUtils.findMethod(cls, MethodLiteralConstants.SAVING_PREFIX, void.class, NO_PARAMETERS_TYPES);
         if (method != null) {
             processClassContext.removeMethod(method);
             val facet = facetHolder.getFacet(PersistingCallbackFacet.class);
@@ -58,7 +57,7 @@ public class PersistCallbackViaSaveMethodFacetFactory extends MethodPrefixBasedF
             }
         }
 
-        method = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, MethodLiteralConstants.SAVED_PREFIX, void.class, NO_PARAMETERS_TYPES);
+        method = MethodFinderUtils.findMethod(cls, MethodLiteralConstants.SAVED_PREFIX, void.class, NO_PARAMETERS_TYPES);
         if (method != null) {
             processClassContext.removeMethod(method);
             val facet = facetHolder.getFacet(PersistedCallbackFacet.class);
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/RemoveCallbackFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/RemoveCallbackFacetFactory.java
index 96ccaa1..685ba8b 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/RemoveCallbackFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/RemoveCallbackFacetFactory.java
@@ -27,7 +27,6 @@ import org.apache.isis.metamodel.facetapi.FacetUtil;
 import org.apache.isis.metamodel.facetapi.FeatureType;
 import org.apache.isis.metamodel.facets.MethodFinderUtils;
 import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
-import org.apache.isis.metamodel.methodutils.MethodScope;
 
 import static org.apache.isis.metamodel.facets.MethodLiteralConstants.REMOVED_PREFIX;
 import static org.apache.isis.metamodel.facets.MethodLiteralConstants.REMOVING_PREFIX;
@@ -49,7 +48,7 @@ public class RemoveCallbackFacetFactory extends MethodPrefixBasedFacetFactoryAbs
         val facets = new ArrayList<Facet>();
 
         Method method = MethodFinderUtils
-                .findMethod(cls, MethodScope.OBJECT, REMOVING_PREFIX, void.class,
+                .findMethod(cls, REMOVING_PREFIX, void.class,
                         NO_PARAMETERS_TYPES);
         if (method != null) {
             processClassContext.removeMethod(method);
@@ -61,7 +60,7 @@ public class RemoveCallbackFacetFactory extends MethodPrefixBasedFacetFactoryAbs
             }
         }
 
-        method = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, REMOVED_PREFIX, void.class, NO_PARAMETERS_TYPES);
+        method = MethodFinderUtils.findMethod(cls, REMOVED_PREFIX, void.class, NO_PARAMETERS_TYPES);
         if (method != null) {
             processClassContext.removeMethod(method);
             val facet = facetHolder.getFacet(RemovedCallbackFacet.class);
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/RemoveCallbackViaDeleteMethodFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/RemoveCallbackViaDeleteMethodFacetFactory.java
index 52482be..516e577 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/RemoveCallbackViaDeleteMethodFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/RemoveCallbackViaDeleteMethodFacetFactory.java
@@ -27,7 +27,6 @@ import org.apache.isis.metamodel.facetapi.FacetUtil;
 import org.apache.isis.metamodel.facetapi.FeatureType;
 import org.apache.isis.metamodel.facets.MethodFinderUtils;
 import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
-import org.apache.isis.metamodel.methodutils.MethodScope;
 
 import static org.apache.isis.metamodel.facets.MethodLiteralConstants.DELETED_PREFIX;
 import static org.apache.isis.metamodel.facets.MethodLiteralConstants.DELETING_PREFIX;
@@ -49,7 +48,7 @@ public class RemoveCallbackViaDeleteMethodFacetFactory extends MethodPrefixBased
         val facets = new ArrayList<Facet>();
 
         Method method = null;
-        method = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, DELETING_PREFIX, void.class, NO_PARAMETERS_TYPES);
+        method = MethodFinderUtils.findMethod(cls, DELETING_PREFIX, void.class, NO_PARAMETERS_TYPES);
         if (method != null) {
             processClassContext.removeMethod(method);
             final RemovingCallbackFacet facet = facetHolder.getFacet(RemovingCallbackFacet.class);
@@ -60,7 +59,7 @@ public class RemoveCallbackViaDeleteMethodFacetFactory extends MethodPrefixBased
             }
         }
 
-        method = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, DELETED_PREFIX, void.class, NO_PARAMETERS_TYPES);
+        method = MethodFinderUtils.findMethod(cls, DELETED_PREFIX, void.class, NO_PARAMETERS_TYPES);
         if (method != null) {
             processClassContext.removeMethod(method);
             val facet = facetHolder.getFacet(RemovedCallbackFacet.class);
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/UpdateCallbackFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/UpdateCallbackFacetFactory.java
index eef6c3d..2baad94 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/UpdateCallbackFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/UpdateCallbackFacetFactory.java
@@ -28,7 +28,6 @@ import org.apache.isis.metamodel.facetapi.FeatureType;
 import org.apache.isis.metamodel.facets.MethodFinderUtils;
 import org.apache.isis.metamodel.facets.MethodLiteralConstants;
 import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
-import org.apache.isis.metamodel.methodutils.MethodScope;
 
 import lombok.val;
 
@@ -47,13 +46,13 @@ public class UpdateCallbackFacetFactory extends MethodPrefixBasedFacetFactoryAbs
         val facets = new ArrayList<Facet>();
 
         Method method = null;
-        method = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, MethodLiteralConstants.UPDATING_PREFIX, void.class, NO_PARAMETERS_TYPES);
+        method = MethodFinderUtils.findMethod(cls, MethodLiteralConstants.UPDATING_PREFIX, void.class, NO_PARAMETERS_TYPES);
         if (method != null) {
             processClassContext.removeMethod(method);
             facets.add(new UpdatingCallbackFacetViaMethod(method, facetHolder));
         }
 
-        method = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, MethodLiteralConstants.UPDATED_PREFIX, void.class, NO_PARAMETERS_TYPES);
+        method = MethodFinderUtils.findMethod(cls, MethodLiteralConstants.UPDATED_PREFIX, void.class, NO_PARAMETERS_TYPES);
         if (method != null) {
             processClassContext.removeMethod(method);
             facets.add(new UpdatedCallbackFacetViaMethod(method, facetHolder));
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/choices/enums/EnumValueSemanticsProvider.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/choices/enums/EnumValueSemanticsProvider.java
index bb766ea..d1e479d 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/choices/enums/EnumValueSemanticsProvider.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/choices/enums/EnumValueSemanticsProvider.java
@@ -33,7 +33,6 @@ import org.apache.isis.metamodel.facetapi.FacetHolder;
 import org.apache.isis.metamodel.facets.MethodFinderUtils;
 import org.apache.isis.metamodel.facets.object.parseable.TextEntryParseException;
 import org.apache.isis.metamodel.facets.object.value.vsp.ValueSemanticsProviderAndFacetAbstract;
-import org.apache.isis.metamodel.methodutils.MethodScope;
 
 public class EnumValueSemanticsProvider<T extends Enum<T>> extends ValueSemanticsProviderAndFacetAbstract<T> implements EnumFacet {
 
@@ -77,8 +76,7 @@ public class EnumValueSemanticsProvider<T extends Enum<T>> extends ValueSemantic
                 defaultFor(adaptedClass));
 
         titleMethod = MethodFinderUtils.findMethod_returningText(
-                getAdaptedClass(), 
-                MethodScope.OBJECT,
+                getAdaptedClass(),
                 TITLE,
                 null);
 
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/cssclass/method/CssClassFacetMethodFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/cssclass/method/CssClassFacetMethodFactory.java
index 3a04f51..a3385a4 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/cssclass/method/CssClassFacetMethodFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/cssclass/method/CssClassFacetMethodFactory.java
@@ -25,7 +25,6 @@ import org.apache.isis.metamodel.facetapi.FacetHolder;
 import org.apache.isis.metamodel.facetapi.FeatureType;
 import org.apache.isis.metamodel.facets.MethodFinderUtils;
 import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
-import org.apache.isis.metamodel.methodutils.MethodScope;
 
 public class CssClassFacetMethodFactory extends MethodPrefixBasedFacetFactoryAbstract {
 
@@ -42,7 +41,7 @@ public class CssClassFacetMethodFactory extends MethodPrefixBasedFacetFactoryAbs
         final Class<?> cls = processClassContext.getCls();
         final FacetHolder facetHolder = processClassContext.getFacetHolder();
 
-        final Method method = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, CSS_CLASS_PREFIX, String.class, NO_PARAMETERS_TYPES);
+        final Method method = MethodFinderUtils.findMethod(cls, CSS_CLASS_PREFIX, String.class, NO_PARAMETERS_TYPES);
         if (method == null) {
             return;
         }
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/disabled/method/DisabledObjectFacetViaMethodFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/disabled/method/DisabledObjectFacetViaMethodFactory.java
index 5552ddc..e88aaaa 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/disabled/method/DisabledObjectFacetViaMethodFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/disabled/method/DisabledObjectFacetViaMethodFactory.java
@@ -27,7 +27,6 @@ import org.apache.isis.metamodel.facets.FacetedMethod;
 import org.apache.isis.metamodel.facets.MethodFinderUtils;
 import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
 import org.apache.isis.metamodel.facets.object.disabled.DisabledObjectFacet;
-import org.apache.isis.metamodel.methodutils.MethodScope;
 import org.apache.isis.metamodel.spec.ObjectSpecification;
 import org.apache.isis.metamodel.spec.feature.ObjectMember;
 
@@ -61,7 +60,7 @@ public class DisabledObjectFacetViaMethodFactory extends MethodPrefixBasedFacetF
         val paramTypes = new Class<?>[] {Identifier.Type.class};
 
         val method = MethodFinderUtils.findMethod_returningText(
-                cls, MethodScope.OBJECT, DISABLED,
+                cls, DISABLED,
                 paramTypes);
         if (method == null) {
             return;
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/hidden/method/HiddenObjectFacetViaMethodFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/hidden/method/HiddenObjectFacetViaMethodFactory.java
index 3dc115b..1432dee 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/hidden/method/HiddenObjectFacetViaMethodFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/hidden/method/HiddenObjectFacetViaMethodFactory.java
@@ -28,7 +28,6 @@ import org.apache.isis.metamodel.facets.FacetedMethod;
 import org.apache.isis.metamodel.facets.MethodFinderUtils;
 import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
 import org.apache.isis.metamodel.facets.object.hidden.HiddenObjectFacet;
-import org.apache.isis.metamodel.methodutils.MethodScope;
 import org.apache.isis.metamodel.spec.ObjectSpecification;
 import org.apache.isis.metamodel.spec.feature.ObjectMember;
 
@@ -78,7 +77,7 @@ public class HiddenObjectFacetViaMethodFactory extends MethodPrefixBasedFacetFac
         final Class<?> cls = processClassContext.getCls();
         final FacetHolder facetHolder = processClassContext.getFacetHolder();
 
-        final Method method = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, HIDDEN_PREFIX, returnType, NO_PARAMETERS_TYPES);
+        final Method method = MethodFinderUtils.findMethod(cls, HIDDEN_PREFIX, returnType, NO_PARAMETERS_TYPES);
         if (method == null) {
             return false;
         }
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/icon/method/IconFacetMethodFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/icon/method/IconFacetMethodFactory.java
index a9f8e41..7604dbe 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/icon/method/IconFacetMethodFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/icon/method/IconFacetMethodFactory.java
@@ -26,7 +26,6 @@ import org.apache.isis.metamodel.facetapi.FacetUtil;
 import org.apache.isis.metamodel.facetapi.FeatureType;
 import org.apache.isis.metamodel.facets.MethodFinderUtils;
 import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
-import org.apache.isis.metamodel.methodutils.MethodScope;
 
 public class IconFacetMethodFactory extends MethodPrefixBasedFacetFactoryAbstract {
 
@@ -43,7 +42,7 @@ public class IconFacetMethodFactory extends MethodPrefixBasedFacetFactoryAbstrac
         final Class<?> cls = processClassContext.getCls();
         final FacetHolder facetHolder = processClassContext.getFacetHolder();
 
-        final Method method = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, ICON_NAME_PREFIX, String.class, NO_PARAMETERS_TYPES);
+        final Method method = MethodFinderUtils.findMethod(cls, ICON_NAME_PREFIX, String.class, NO_PARAMETERS_TYPES);
         if (method == null) {
             return;
         }
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/ignore/datanucleus/RemoveDatanucleusPersistableTypesFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/ignore/datanucleus/RemoveDatanucleusPersistableTypesFacetFactory.java
index 8f67909..a0f8840 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/ignore/datanucleus/RemoveDatanucleusPersistableTypesFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/ignore/datanucleus/RemoveDatanucleusPersistableTypesFacetFactory.java
@@ -26,7 +26,6 @@ import org.apache.isis.commons.internal.factory.InstanceUtil;
 import org.apache.isis.metamodel.facetapi.FeatureType;
 import org.apache.isis.metamodel.facets.FacetFactoryAbstract;
 import org.apache.isis.metamodel.facets.object.ignore.javalang.RemoveMethodsFacetFactory;
-import org.apache.isis.metamodel.methodutils.MethodScope;
 
 /**
  * Removes all methods inherited from <tt>org.datanucleus.enhancement.Persistable</tt> (if datanucleus 4.1.x is on the classpath).
@@ -58,7 +57,7 @@ public class RemoveDatanucleusPersistableTypesFacetFactory extends FacetFactoryA
     @Override
     public void process(final ProcessClassContext processClassContext) {
         for (final RemoveMethodsFacetFactory.MethodAndParameterTypes mapt : datanucleusPersistableMethodsToIgnore) {
-            processClassContext.removeMethod(MethodScope.OBJECT, mapt.methodName, null, mapt.methodParameters);
+            processClassContext.removeMethod(mapt.methodName, null, mapt.methodParameters);
         }
     }
 
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/ignore/javalang/IteratorFilteringFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/ignore/javalang/IteratorFilteringFacetFactory.java
index 8dc9921..0e7e1dc 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/ignore/javalang/IteratorFilteringFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/ignore/javalang/IteratorFilteringFacetFactory.java
@@ -25,7 +25,6 @@ import org.apache.isis.metamodel.facetapi.Facet;
 import org.apache.isis.metamodel.facetapi.FeatureType;
 import org.apache.isis.metamodel.facets.FacetFactoryAbstract;
 import org.apache.isis.metamodel.facets.MethodFilteringFacetFactory;
-import org.apache.isis.metamodel.methodutils.MethodScope;
 
 /**
  * Designed to simply filter out {@link Iterable#iterator()} method if it
@@ -42,7 +41,7 @@ public class IteratorFilteringFacetFactory extends FacetFactoryAbstract implemen
 
     @Override
     public void process(final ProcessClassContext processClassContext) {
-        processClassContext.removeMethod(MethodScope.OBJECT, "iterator", java.util.Iterator.class, new Class[] {});
+        processClassContext.removeMethod("iterator", java.util.Iterator.class, new Class[] {});
     }
 
     @Override
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/ignore/javalang/RemoveMethodsFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/ignore/javalang/RemoveMethodsFacetFactory.java
index 8c9a824..7323b1f 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/ignore/javalang/RemoveMethodsFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/ignore/javalang/RemoveMethodsFacetFactory.java
@@ -29,7 +29,6 @@ import org.apache.isis.metamodel.commons.ClassExtensions;
 import org.apache.isis.metamodel.facetapi.Facet;
 import org.apache.isis.metamodel.facetapi.FeatureType;
 import org.apache.isis.metamodel.facets.FacetFactoryAbstract;
-import org.apache.isis.metamodel.methodutils.MethodScope;
 import org.apache.isis.metamodel.spec.InjectorMethodEvaluator;
 import org.apache.isis.metamodel.specloader.InjectorMethodEvaluatorDefault;
 
@@ -106,11 +105,11 @@ public class RemoveMethodsFacetFactory extends FacetFactoryAbstract {
 
         // removeJavaLangObjectMethods(processClassContext);
         for (final MethodAndParameterTypes mapt : javaLangObjectMethodsToIgnore) {
-            processClassContext.removeMethod(MethodScope.OBJECT, mapt.methodName, null, mapt.methodParameters);
+            processClassContext.removeMethod(mapt.methodName, null, mapt.methodParameters);
         }
 
         // removeInitMethod(processClassContext);
-        processClassContext.removeMethod(MethodScope.OBJECT, "init", void.class, _Constants.emptyClasses);
+        processClassContext.removeMethod("init", void.class, _Constants.emptyClasses);
     }
 
     private void removeSuperclassMethods(Class<?> type, final ProcessClassContext processClassContext) {
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/ignore/jdo/RemoveJdoEnhancementTypesFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/ignore/jdo/RemoveJdoEnhancementTypesFacetFactory.java
index fc075c6..4392d7f 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/ignore/jdo/RemoveJdoEnhancementTypesFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/ignore/jdo/RemoveJdoEnhancementTypesFacetFactory.java
@@ -27,7 +27,6 @@ import org.apache.isis.commons.internal.factory.InstanceUtil;
 import org.apache.isis.metamodel.facetapi.FeatureType;
 import org.apache.isis.metamodel.facets.FacetFactoryAbstract;
 import org.apache.isis.metamodel.facets.object.ignore.javalang.RemoveMethodsFacetFactory;
-import org.apache.isis.metamodel.methodutils.MethodScope;
 
 /**
  * Removes all methods inherited from <tt>javax.jdo.spi.PersistenceCapable</tt> (if JDO is on the classpath).
@@ -59,7 +58,7 @@ public class RemoveJdoEnhancementTypesFacetFactory extends FacetFactoryAbstract
     @Override
     public void process(final ProcessClassContext processClassContext) {
         for (final RemoveMethodsFacetFactory.MethodAndParameterTypes mapt : jdoEnhancementmethodsToIgnore) {
-            processClassContext.removeMethod(MethodScope.OBJECT, mapt.methodName, null, mapt.methodParameters);
+            processClassContext.removeMethod(mapt.methodName, null, mapt.methodParameters);
         }
     }
 
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/layout/LayoutFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/layout/LayoutFacetFactory.java
index 41c63c6..da62878 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/layout/LayoutFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/layout/LayoutFacetFactory.java
@@ -25,7 +25,6 @@ import org.apache.isis.metamodel.facetapi.FacetHolder;
 import org.apache.isis.metamodel.facetapi.FeatureType;
 import org.apache.isis.metamodel.facets.MethodFinderUtils;
 import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
-import org.apache.isis.metamodel.methodutils.MethodScope;
 
 public class LayoutFacetFactory extends MethodPrefixBasedFacetFactoryAbstract {
 
@@ -42,7 +41,7 @@ public class LayoutFacetFactory extends MethodPrefixBasedFacetFactoryAbstract {
         final Class<?> cls = processClassContext.getCls();
         final FacetHolder facetHolder = processClassContext.getFacetHolder();
 
-        final Method method = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, LAYOUT_METHOD_NAME, String.class, NO_PARAMETERS_TYPES);
+        final Method method = MethodFinderUtils.findMethod(cls, LAYOUT_METHOD_NAME, String.class, NO_PARAMETERS_TYPES);
 
         final LayoutFacet facet;
         if (method == null) {
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/title/annotation/TitleAnnotationFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/title/annotation/TitleAnnotationFacetFactory.java
index 5aa2e59..0367f12 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/title/annotation/TitleAnnotationFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/title/annotation/TitleAnnotationFacetFactory.java
@@ -36,7 +36,6 @@ import org.apache.isis.metamodel.facets.Annotations;
 import org.apache.isis.metamodel.facets.FacetFactoryAbstract;
 import org.apache.isis.metamodel.facets.MethodFinderUtils;
 import org.apache.isis.metamodel.facets.fallback.FallbackFacetFactory;
-import org.apache.isis.metamodel.methodutils.MethodScope;
 import org.apache.isis.metamodel.progmodel.ProgrammingModel;
 
 public class TitleAnnotationFacetFactory extends FacetFactoryAbstract
@@ -153,7 +152,7 @@ implements MetaModelRefiner {
 
             final Class<?> cls = objectSpec.getCorrespondingClass();
 
-            final Method titleMethod = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, TITLE_METHOD_NAME, String.class, null);
+            final Method titleMethod = MethodFinderUtils.findMethod(cls, TITLE_METHOD_NAME, String.class, null);
             if (titleMethod == null) {
                 return true;
             }
@@ -182,7 +181,7 @@ implements MetaModelRefiner {
     }
 
     private static List<Method> methodsWithTitleAnnotation(final Class<?> cls) {
-        return MethodFinderUtils.findMethodsWithAnnotation(cls, MethodScope.OBJECT, Title.class);
+        return MethodFinderUtils.findMethodsWithAnnotation(cls, Title.class);
     }
 
 }
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/title/methods/TitleFacetViaMethodsFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/title/methods/TitleFacetViaMethodsFactory.java
index a3d22be..37f1606 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/title/methods/TitleFacetViaMethodsFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/title/methods/TitleFacetViaMethodsFactory.java
@@ -30,7 +30,6 @@ import org.apache.isis.metamodel.facets.MethodFinderUtils;
 import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
 import org.apache.isis.metamodel.facets.fallback.FallbackFacetFactory;
 import org.apache.isis.metamodel.facets.object.title.TitleFacet;
-import org.apache.isis.metamodel.methodutils.MethodScope;
 
 import static org.apache.isis.metamodel.facets.MethodLiteralConstants.TITLE;
 import static org.apache.isis.metamodel.facets.MethodLiteralConstants.TO_STRING;
@@ -53,7 +52,7 @@ public class TitleFacetViaMethodsFactory extends MethodPrefixBasedFacetFactoryAb
         final FacetHolder facetHolder = processClassContext.getFacetHolder();
 
         Method method = MethodFinderUtils.findMethod_returningText(
-                cls, MethodScope.OBJECT,
+                cls,
                 TITLE,
                 NO_PARAMETERS_TYPES);
         if (method != null) {
@@ -74,7 +73,7 @@ public class TitleFacetViaMethodsFactory extends MethodPrefixBasedFacetFactoryAb
         }
 
         try {
-            method = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, TO_STRING, String.class, null);
+            method = MethodFinderUtils.findMethod(cls, TO_STRING, String.class, null);
             if (method == null) {
                 return;
             }
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/validating/validateobject/method/ValidateObjectFacetMethodFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/validating/validateobject/method/ValidateObjectFacetMethodFactory.java
index ee31f2d..1490b7e 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/validating/validateobject/method/ValidateObjectFacetMethodFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/validating/validateobject/method/ValidateObjectFacetMethodFactory.java
@@ -28,7 +28,6 @@ import org.apache.isis.metamodel.facetapi.FeatureType;
 import org.apache.isis.metamodel.facetapi.IdentifiedHolder;
 import org.apache.isis.metamodel.facets.MethodFinderUtils;
 import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
-import org.apache.isis.metamodel.methodutils.MethodScope;
 
 import static org.apache.isis.metamodel.facets.MethodLiteralConstants.VALIDATE_PREFIX;
 
@@ -46,7 +45,7 @@ public class ValidateObjectFacetMethodFactory extends MethodPrefixBasedFacetFact
         final FacetHolder facetHolder = processClassContext.getFacetHolder();
 
         final Method method = MethodFinderUtils.findMethod_returningText(
-                cls, MethodScope.OBJECT,
+                cls,
                 VALIDATE_PREFIX,
                 NO_PARAMETERS_TYPES);
         if (method != null) {
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/autocomplete/method/ActionParameterAutoCompleteFacetViaMethodFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/autocomplete/method/ActionParameterAutoCompleteFacetViaMethodFactory.java
index 88ffa4e..5eada6d 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/autocomplete/method/ActionParameterAutoCompleteFacetViaMethodFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/autocomplete/method/ActionParameterAutoCompleteFacetViaMethodFactory.java
@@ -32,7 +32,6 @@ import org.apache.isis.metamodel.facets.FacetedMethodParameter;
 import org.apache.isis.metamodel.facets.MethodFinderUtils;
 import org.apache.isis.metamodel.facets.MethodLiteralConstants;
 import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
-import org.apache.isis.metamodel.methodutils.MethodScope;
 
 public class ActionParameterAutoCompleteFacetViaMethodFactory extends MethodPrefixBasedFacetFactoryAbstract {
 
@@ -97,9 +96,8 @@ public class ActionParameterAutoCompleteFacetViaMethodFactory extends MethodPref
         final String name = MethodLiteralConstants.AUTO_COMPLETE_PREFIX + paramNum + capitalizedName;
         return MethodFinderUtils.findMethod_returningAnyOf(
                 returnTypes,
-                cls, 
-                MethodScope.OBJECT, 
-                name, 
+                cls,
+                name,
                 new Class[]{String.class});
     }
 
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/choices/method/ActionChoicesFacetViaMethodFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/choices/method/ActionChoicesFacetViaMethodFactory.java
index 4e3c225..4549da3 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/choices/method/ActionChoicesFacetViaMethodFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/choices/method/ActionChoicesFacetViaMethodFactory.java
@@ -26,12 +26,10 @@ import org.apache.isis.commons.internal._Constants;
 import org.apache.isis.metamodel.commons.StringExtensions;
 import org.apache.isis.metamodel.facetapi.Facet;
 import org.apache.isis.metamodel.facetapi.FacetHolder;
-import org.apache.isis.metamodel.facetapi.FacetUtil;
 import org.apache.isis.metamodel.facetapi.FeatureType;
 import org.apache.isis.metamodel.facets.MethodFinderUtils;
 import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
 import org.apache.isis.metamodel.facets.MethodLiteralConstants;
-import org.apache.isis.metamodel.methodutils.MethodScope;
 
 public class ActionChoicesFacetViaMethodFactory extends MethodPrefixBasedFacetFactoryAbstract {
 
@@ -91,11 +89,10 @@ public class ActionChoicesFacetViaMethodFactory extends MethodPrefixBasedFacetFa
         final Class<?> cls = processMethodContext.getCls();
 
         final Method actionMethod = processMethodContext.getMethod();
-        final MethodScope methodScope = MethodScope.scopeFor(actionMethod);
         final String capitalizedName = StringExtensions.asCapitalizedName(actionMethod.getName());
 
         final String name = MethodLiteralConstants.CHOICES_PREFIX + capitalizedName;
-        choicesMethod = MethodFinderUtils.findMethod(cls, methodScope, name, returnType2, _Constants.emptyClasses);
+        choicesMethod = MethodFinderUtils.findMethod(cls, name, returnType2, _Constants.emptyClasses);
         return choicesMethod;
     }
 
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/choices/methodnum/ActionParameterChoicesFacetViaMethodFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/choices/methodnum/ActionParameterChoicesFacetViaMethodFactory.java
index 0ce6a24..b92a0cc 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/choices/methodnum/ActionParameterChoicesFacetViaMethodFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/choices/methodnum/ActionParameterChoicesFacetViaMethodFactory.java
@@ -35,7 +35,6 @@ import org.apache.isis.metamodel.facets.MethodFinderUtils;
 import org.apache.isis.metamodel.facets.MethodLiteralConstants;
 import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
 import org.apache.isis.metamodel.facets.param.choices.ActionChoicesFacet;
-import org.apache.isis.metamodel.methodutils.MethodScope;
 
 public class ActionParameterChoicesFacetViaMethodFactory extends MethodPrefixBasedFacetFactoryAbstract {
 
@@ -135,7 +134,7 @@ public class ActionParameterChoicesFacetViaMethodFactory extends MethodPrefixBas
         final Method actionMethod = processMethodContext.getMethod();
         final String capitalizedName = StringExtensions.asCapitalizedName(actionMethod.getName());
         final String name = MethodLiteralConstants.CHOICES_PREFIX + n + capitalizedName;
-        return MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, name, returnType, paramTypes);
+        return MethodFinderUtils.findMethod(cls, name, returnType, paramTypes);
     }
 
 
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/defaults/methodnum/ActionParameterDefaultsFacetViaMethodFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/defaults/methodnum/ActionParameterDefaultsFacetViaMethodFactory.java
index bc51967..83f78fd 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/defaults/methodnum/ActionParameterDefaultsFacetViaMethodFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/defaults/methodnum/ActionParameterDefaultsFacetViaMethodFactory.java
@@ -33,7 +33,6 @@ import org.apache.isis.metamodel.facets.MethodFinderUtils;
 import org.apache.isis.metamodel.facets.MethodLiteralConstants;
 import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
 import org.apache.isis.metamodel.facets.actions.defaults.ActionDefaultsFacet;
-import org.apache.isis.metamodel.methodutils.MethodScope;
 
 import lombok.val;
 
@@ -111,9 +110,8 @@ public class ActionParameterDefaultsFacetViaMethodFactory extends MethodPrefixBa
 
         for(;;) {
             val method = MethodFinderUtils.findMethod(
-                    cls, 
-                    MethodScope.OBJECT, 
-                    capitalizedName, 
+                    cls,
+                    capitalizedName,
                     returnType, 
                     paramTypes);
             
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/disable/method/ActionParameterDisabledFacetViaMethodFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/disable/method/ActionParameterDisabledFacetViaMethodFactory.java
index c29d5d1..88a6343 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/disable/method/ActionParameterDisabledFacetViaMethodFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/disable/method/ActionParameterDisabledFacetViaMethodFactory.java
@@ -19,6 +19,8 @@
 
 package org.apache.isis.metamodel.facets.param.disable.method;
 
+import lombok.val;
+
 import java.lang.reflect.Method;
 import java.util.List;
 
@@ -32,9 +34,6 @@ import org.apache.isis.metamodel.facets.MethodFinderUtils;
 import org.apache.isis.metamodel.facets.MethodLiteralConstants;
 import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
 import org.apache.isis.metamodel.facets.param.disable.ActionParameterDisabledFacet;
-import org.apache.isis.metamodel.methodutils.MethodScope;
-
-import lombok.val;
 
 /**
  * Sets up {@link ActionParameterDisabledFacet}.
@@ -58,7 +57,6 @@ public class ActionParameterDisabledFacetViaMethodFactory extends MethodPrefixBa
 
         final String capitalizedName = StringExtensions.asCapitalizedName(actionMethod.getName());
         final List<Class<?>> paramTypes = ListExtensions.mutableCopy(actionMethod.getParameterTypes());
-        final MethodScope onClass = MethodScope.scopeFor(actionMethod);
 
         final String hideName = MethodLiteralConstants.DISABLE_PREFIX + paramNum + capitalizedName;
 
@@ -68,7 +66,7 @@ public class ActionParameterDisabledFacetViaMethodFactory extends MethodPrefixBa
 
         for(int i=0; i< numParamTypes+1; i++) {
             val disableMethod = MethodFinderUtils.findMethod_returningText(
-                    cls, onClass,
+                    cls,
                     hideName,
                     NO_PARAMETERS_TYPES);
 
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/hide/method/ActionParameterHiddenFacetViaMethodFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/hide/method/ActionParameterHiddenFacetViaMethodFactory.java
index 9cb1c54..9b4918e 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/hide/method/ActionParameterHiddenFacetViaMethodFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/hide/method/ActionParameterHiddenFacetViaMethodFactory.java
@@ -19,6 +19,8 @@
 
 package org.apache.isis.metamodel.facets.param.hide.method;
 
+import lombok.val;
+
 import java.lang.reflect.Method;
 import java.util.List;
 
@@ -31,9 +33,6 @@ import org.apache.isis.metamodel.facets.MethodFinderUtils;
 import org.apache.isis.metamodel.facets.MethodLiteralConstants;
 import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
 import org.apache.isis.metamodel.facets.param.hide.ActionParameterHiddenFacet;
-import org.apache.isis.metamodel.methodutils.MethodScope;
-
-import lombok.val;
 
 /**
  * Sets up {@link ActionParameterHiddenFacet}.
@@ -57,7 +56,6 @@ public class ActionParameterHiddenFacetViaMethodFactory extends MethodPrefixBase
 
         final String capitalizedName = StringExtensions.asCapitalizedName(actionMethod.getName());
         final List<Class<?>> paramTypes = ListExtensions.mutableCopy(actionMethod.getParameterTypes());
-        final MethodScope onClass = MethodScope.scopeFor(actionMethod);
 
         final String hideName = MethodLiteralConstants.HIDE_PREFIX + paramNum + capitalizedName;
 
@@ -65,7 +63,7 @@ public class ActionParameterHiddenFacetViaMethodFactory extends MethodPrefixBase
 
         for(int i=0; i< numParamTypes+1; i++) {
             val hideMethod = MethodFinderUtils.findMethod(
-                    cls, onClass,
+                    cls,
                     hideName,
                     boolean.class,
                     NO_PARAMETERS_TYPES);
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/validate/method/ActionParameterValidationFacetViaMethodFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/validate/method/ActionParameterValidationFacetViaMethodFactory.java
index 0d75f62..9828be0 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/validate/method/ActionParameterValidationFacetViaMethodFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/validate/method/ActionParameterValidationFacetViaMethodFactory.java
@@ -19,6 +19,8 @@
 
 package org.apache.isis.metamodel.facets.param.validate.method;
 
+import lombok.val;
+
 import java.lang.reflect.Method;
 
 import org.apache.isis.applib.services.i18n.TranslationService;
@@ -29,9 +31,6 @@ import org.apache.isis.metamodel.facetapi.IdentifiedHolder;
 import org.apache.isis.metamodel.facets.MethodFinderUtils;
 import org.apache.isis.metamodel.facets.MethodLiteralConstants;
 import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
-import org.apache.isis.metamodel.methodutils.MethodScope;
-
-import lombok.val;
 
 /**
  * Sets up {@link org.apache.isis.metamodel.facets.param.validate.ActionParameterValidationFacet}.
@@ -59,11 +58,10 @@ public class ActionParameterValidationFacetViaMethodFactory extends MethodPrefix
         final IdentifiedHolder facetHolder = processParameterContext.getFacetHolder();
 
         final String capitalizedName = StringExtensions.asCapitalizedName(actionMethod.getName());
-        final MethodScope onClass = MethodScope.scopeFor(actionMethod);
 
         final String validateName = MethodLiteralConstants.VALIDATE_PREFIX + paramNum + capitalizedName;
         final Method validateMethod = MethodFinderUtils.findMethod_returningText(
-                cls, onClass,
+                cls,
                 validateName,
                 new Class<?>[]{paramType});
         if (validateMethod == null) {
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/accessor/PropertyAccessorFacetViaAccessorFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/accessor/PropertyAccessorFacetViaAccessorFactory.java
index b51f3e8..5e7c117 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/accessor/PropertyAccessorFacetViaAccessorFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/accessor/PropertyAccessorFacetViaAccessorFactory.java
@@ -29,7 +29,6 @@ import org.apache.isis.metamodel.facetapi.FeatureType;
 import org.apache.isis.metamodel.facetapi.MethodRemover;
 import org.apache.isis.metamodel.facets.MethodLiteralConstants;
 import org.apache.isis.metamodel.facets.PropertyOrCollectionIdentifyingFacetFactoryAbstract;
-import org.apache.isis.metamodel.methodutils.MethodScope;
 import org.apache.isis.metamodel.spec.ObjectSpecification;
 
 public class PropertyAccessorFacetViaAccessorFactory extends PropertyOrCollectionIdentifyingFacetFactoryAbstract {
@@ -99,7 +98,7 @@ public class PropertyAccessorFacetViaAccessorFactory extends PropertyOrCollectio
     }
 
     private static void appendMatchingMethods(final MethodRemover methodRemover, final String prefix, final Class<?> returnType, final List<Method> methodListToAppendTo) {
-        methodRemover.removeMethods(MethodScope.OBJECT, prefix, returnType, CanBeVoid.FALSE, 0, methodListToAppendTo::add);
+        methodRemover.removeMethods(prefix, returnType, CanBeVoid.FALSE, 0, methodListToAppendTo::add);
     }
 
     @Override
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/autocomplete/method/PropertyAutoCompleteFacetMethodFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/autocomplete/method/PropertyAutoCompleteFacetMethodFactory.java
index eb513f7..671b266 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/autocomplete/method/PropertyAutoCompleteFacetMethodFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/autocomplete/method/PropertyAutoCompleteFacetMethodFactory.java
@@ -28,7 +28,6 @@ import org.apache.isis.metamodel.facetapi.FeatureType;
 import org.apache.isis.metamodel.facets.MethodFinderUtils;
 import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
 import org.apache.isis.metamodel.facets.MethodLiteralConstants;
-import org.apache.isis.metamodel.methodutils.MethodScope;
 
 public class PropertyAutoCompleteFacetMethodFactory extends MethodPrefixBasedFacetFactoryAbstract {
 
@@ -52,7 +51,7 @@ public class PropertyAutoCompleteFacetMethodFactory extends MethodPrefixBasedFac
 
         final Class<?> cls = processMethodContext.getCls();
         final Class<?> returnType = getMethod.getReturnType();
-        final Method autoCompleteMethod = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, MethodLiteralConstants.AUTO_COMPLETE_PREFIX + capitalizedName, (Class<?>)null, new Class[]{String.class});
+        final Method autoCompleteMethod = MethodFinderUtils.findMethod(cls, MethodLiteralConstants.AUTO_COMPLETE_PREFIX + capitalizedName, (Class<?>)null, new Class[]{String.class});
         if (autoCompleteMethod == null) {
             return;
         }
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/choices/method/PropertyChoicesFacetViaMethodFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/choices/method/PropertyChoicesFacetViaMethodFactory.java
index 77b90a5..ad36b1c 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/choices/method/PropertyChoicesFacetViaMethodFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/choices/method/PropertyChoicesFacetViaMethodFactory.java
@@ -28,7 +28,6 @@ import org.apache.isis.metamodel.facetapi.FeatureType;
 import org.apache.isis.metamodel.facets.MethodFinderUtils;
 import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
 import org.apache.isis.metamodel.facets.MethodLiteralConstants;
-import org.apache.isis.metamodel.methodutils.MethodScope;
 
 public class PropertyChoicesFacetViaMethodFactory extends MethodPrefixBasedFacetFactoryAbstract {
 
@@ -51,7 +50,7 @@ public class PropertyChoicesFacetViaMethodFactory extends MethodPrefixBasedFacet
 
         final Class<?> cls = processMethodContext.getCls();
         final Class<?> returnType = getMethod.getReturnType();
-        final Method choicesMethod = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, MethodLiteralConstants.CHOICES_PREFIX + capitalizedName, (Class<?>)null, NO_PARAMETERS_TYPES);
+        final Method choicesMethod = MethodFinderUtils.findMethod(cls, MethodLiteralConstants.CHOICES_PREFIX + capitalizedName, (Class<?>)null, NO_PARAMETERS_TYPES);
         if (choicesMethod == null) {
             return;
         }
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/defaults/method/PropertyDefaultFacetViaMethodFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/defaults/method/PropertyDefaultFacetViaMethodFactory.java
index 7f61109..9ba40f5 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/defaults/method/PropertyDefaultFacetViaMethodFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/defaults/method/PropertyDefaultFacetViaMethodFactory.java
@@ -28,7 +28,6 @@ import org.apache.isis.metamodel.facetapi.FeatureType;
 import org.apache.isis.metamodel.facets.MethodFinderUtils;
 import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
 import org.apache.isis.metamodel.facets.MethodLiteralConstants;
-import org.apache.isis.metamodel.methodutils.MethodScope;
 
 public class PropertyDefaultFacetViaMethodFactory extends MethodPrefixBasedFacetFactoryAbstract {
 
@@ -52,7 +51,7 @@ public class PropertyDefaultFacetViaMethodFactory extends MethodPrefixBasedFacet
 
         final Class<?> cls = processMethodContext.getCls();
         final Class<?> returnType = getMethod.getReturnType();
-        final Method method = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, MethodLiteralConstants.DEFAULT_PREFIX + capitalizedName, returnType, NO_PARAMETERS_TYPES);
+        final Method method = MethodFinderUtils.findMethod(cls, MethodLiteralConstants.DEFAULT_PREFIX + capitalizedName, returnType, NO_PARAMETERS_TYPES);
         if (method == null) {
             return;
         }
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/update/PropertyModifyFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/update/PropertyModifyFacetFactory.java
index 5e4a9b6..6f1fa25 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/update/PropertyModifyFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/update/PropertyModifyFacetFactory.java
@@ -29,7 +29,6 @@ import org.apache.isis.metamodel.facets.MethodFinderUtils;
 import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
 import org.apache.isis.metamodel.facets.MethodLiteralConstants;
 import org.apache.isis.metamodel.facets.properties.update.modify.PropertySetterFacetViaModifyMethod;
-import org.apache.isis.metamodel.methodutils.MethodScope;
 
 public class PropertyModifyFacetFactory extends MethodPrefixBasedFacetFactoryAbstract {
 
@@ -54,7 +53,7 @@ public class PropertyModifyFacetFactory extends MethodPrefixBasedFacetFactoryAbs
         final Class<?>[] paramTypes = new Class[] { returnType };
 
         final Class<?> cls = processMethodContext.getCls();
-        final Method modifyMethod = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, MethodLiteralConstants.MODIFY_PREFIX + capitalizedName, void.class, paramTypes);
+        final Method modifyMethod = MethodFinderUtils.findMethod(cls, MethodLiteralConstants.MODIFY_PREFIX + capitalizedName, void.class, paramTypes);
 
         if (modifyMethod == null) {
             return;
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/update/PropertySetAndClearFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/update/PropertySetAndClearFacetFactory.java
index a103808..1123777 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/update/PropertySetAndClearFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/update/PropertySetAndClearFacetFactory.java
@@ -33,7 +33,6 @@ import org.apache.isis.metamodel.facets.properties.update.clear.PropertyClearFac
 import org.apache.isis.metamodel.facets.properties.update.clear.PropertyClearFacetViaSetterMethod;
 import org.apache.isis.metamodel.facets.properties.update.init.PropertyInitializationFacetViaSetterMethod;
 import org.apache.isis.metamodel.facets.properties.update.modify.PropertySetterFacetViaSetterMethod;
-import org.apache.isis.metamodel.methodutils.MethodScope;
 
 public class PropertySetAndClearFacetFactory extends MethodPrefixBasedFacetFactoryAbstract {
 
@@ -66,7 +65,7 @@ public class PropertySetAndClearFacetFactory extends MethodPrefixBasedFacetFacto
         final Class<?> cls = processMethodContext.getCls();
         final Class<?> returnType = getMethod.getReturnType();
         final Class<?>[] paramTypes = new Class[] { returnType };
-        final Method setMethod = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, MethodLiteralConstants.SET_PREFIX + capitalizedName, void.class, paramTypes);
+        final Method setMethod = MethodFinderUtils.findMethod(cls, MethodLiteralConstants.SET_PREFIX + capitalizedName, void.class, paramTypes);
         processMethodContext.removeMethod(setMethod);
 
         final FacetHolder property = processMethodContext.getFacetHolder();
@@ -92,7 +91,7 @@ public class PropertySetAndClearFacetFactory extends MethodPrefixBasedFacetFacto
         final FacetHolder property = processMethodContext.getFacetHolder();
 
         final String capitalizedName = StringExtensions.asJavaBaseName(getMethod.getName());
-        final Method clearMethod = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, MethodLiteralConstants.CLEAR_PREFIX + capitalizedName, void.class, NO_PARAMETERS_TYPES);
+        final Method clearMethod = MethodFinderUtils.findMethod(cls, MethodLiteralConstants.CLEAR_PREFIX + capitalizedName, void.class, NO_PARAMETERS_TYPES);
 
         if (clearMethod == null) {
             return null;
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/validating/method/PropertyValidateFacetViaMethodFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/validating/method/PropertyValidateFacetViaMethodFactory.java
index dea22a0..4348772 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/validating/method/PropertyValidateFacetViaMethodFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/validating/method/PropertyValidateFacetViaMethodFactory.java
@@ -27,7 +27,6 @@ import org.apache.isis.metamodel.facetapi.FeatureType;
 import org.apache.isis.metamodel.facets.FacetedMethod;
 import org.apache.isis.metamodel.facets.MethodFinderUtils;
 import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
-import org.apache.isis.metamodel.methodutils.MethodScope;
 
 import static org.apache.isis.metamodel.facets.MethodLiteralConstants.VALIDATE_PREFIX;
 
@@ -55,7 +54,7 @@ public class PropertyValidateFacetViaMethodFactory extends MethodPrefixBasedFace
 
         final Class<?> cls = processMethodContext.getCls();
         final Method method = MethodFinderUtils.findMethod_returningText(
-                cls, MethodScope.OBJECT,
+                cls,
                 VALIDATE_PREFIX + capitalizedName,
                 paramTypes);
         if (method == null) {
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/methodutils/MethodScope.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/methodutils/MethodScope.java
deleted file mode 100644
index 372b8d4..0000000
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/methodutils/MethodScope.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- *  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *
- *        http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License.
- */
-
-package org.apache.isis.metamodel.methodutils;
-
-import java.lang.reflect.Method;
-import java.lang.reflect.Modifier;
-
-/**
- * As used in the <tt>findAndRemove...</tt> methods.
- */
-public enum MethodScope {
-    CLASS, OBJECT;
-
-    public boolean isClass() {
-        return this == CLASS;
-    }
-
-    public boolean isObject() {
-        return this == OBJECT;
-    }
-
-    public boolean doesNotMatchScope(final Method method) {
-        return !matchesScopeOf(method);
-    }
-
-    public boolean matchesScopeOf(final Method method) {
-        return isStatic(method) == this.isClass();
-    }
-
-    public static MethodScope scopeFor(final Method method) {
-        return isStatic(method) ? CLASS : OBJECT;
-    }
-
-    private static boolean isStatic(final Method method) {
-        final int modifiers = method.getModifiers();
-        final boolean isStatic = Modifier.isStatic(modifiers);
-        return isStatic;
-    }
-
-}
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/specloader/specimpl/FacetedMethodsBuilder.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/specloader/specimpl/FacetedMethodsBuilder.java
index d35f94e..b8fcfa0 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/specloader/specimpl/FacetedMethodsBuilder.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/specloader/specimpl/FacetedMethodsBuilder.java
@@ -44,7 +44,6 @@ import org.apache.isis.metamodel.facets.FacetedMethodParameter;
 import org.apache.isis.metamodel.facets.actcoll.typeof.TypeOfFacet;
 import org.apache.isis.metamodel.facets.object.facets.FacetsFacet;
 import org.apache.isis.metamodel.facets.object.mixin.MixinFacet;
-import org.apache.isis.metamodel.methodutils.MethodScope;
 import org.apache.isis.metamodel.specloader.SpecificationLoader;
 import org.apache.isis.metamodel.services.classsubstitutor.ClassSubstitutor;
 import org.apache.isis.metamodel.specloader.facetprocessor.FacetProcessor;
@@ -74,19 +73,17 @@ public class FacetedMethodsBuilder {
 
         @Override
         public void removeMethod(
-                MethodScope methodScope,
                 String methodName,
                 Class<?> returnType,
                 Class<?>[] parameterTypes) {
             
             //synchronized($lock) {
-                MethodUtil.removeMethod(methodsRemaining, methodScope, methodName, returnType, parameterTypes);
+                MethodUtil.removeMethod(methodsRemaining, methodName, returnType, parameterTypes);
             //}
         }
 
         @Override
         public void removeMethods(
-                MethodScope methodScope,
                 String prefix,
                 Class<?> returnType,
                 CanBeVoid canBeVoid,
@@ -94,7 +91,7 @@ public class FacetedMethodsBuilder {
                 Consumer<Method> onRemoval) {
             
             //synchronized($lock) {
-                MethodUtil.removeMethods(methodsRemaining, methodScope, prefix, returnType, canBeVoid, paramCount, onRemoval);
+                MethodUtil.removeMethods(methodsRemaining, prefix, returnType, canBeVoid, paramCount, onRemoval);
             //}
         }
 
@@ -276,8 +273,8 @@ public class FacetedMethodsBuilder {
         val propertyAccessors = _Lists.<Method>newArrayList();
         getFacetProcessor().findAndRemovePropertyAccessors(methodRemover, propertyAccessors);
 
-        findAndRemovePrefixedNonVoidMethods(MethodScope.OBJECT, GET_PREFIX, Object.class, 0, propertyAccessors::add);
-        findAndRemovePrefixedNonVoidMethods(MethodScope.OBJECT, IS_PREFIX, Boolean.class, 0, propertyAccessors::add);
+        findAndRemovePrefixedNonVoidMethods(GET_PREFIX, Object.class, 0, propertyAccessors::add);
+        findAndRemovePrefixedNonVoidMethods(IS_PREFIX, Boolean.class, 0, propertyAccessors::add);
 
         createPropertyFacetedMethodsFromAccessors(propertyAccessors, onNewField);
     }
@@ -358,32 +355,30 @@ public class FacetedMethodsBuilder {
      */
     public List<FacetedMethod> getActionFacetedMethods() {
         if (actionFacetedMethods == null) {
-            actionFacetedMethods = findActionFacetedMethods(MethodScope.OBJECT);
+            actionFacetedMethods = findActionFacetedMethods();
         }
         return actionFacetedMethods;
     }
 
-    private List<FacetedMethod> findActionFacetedMethods(
-            final MethodScope methodScope) {
+    private List<FacetedMethod> findActionFacetedMethods() {
         
         if (log.isDebugEnabled()) {
             log.debug("introspecting {}: actions", getClassName());
         }
         val actionFacetedMethods = _Lists.<FacetedMethod>newArrayList();
-        collectActionFacetedMethods(actionFacetedMethods::add, methodScope);
+        collectActionFacetedMethods(actionFacetedMethods::add);
         return actionFacetedMethods;
     }
 
     private void collectActionFacetedMethods(
-            final Consumer<FacetedMethod> onActionFacetedMethod,
-            final MethodScope methodScope) {
+            final Consumer<FacetedMethod> onActionFacetedMethod) {
 
         if (log.isDebugEnabled()) {
             log.debug("  looking for action methods");
         }
 
         methodRemover.removeIf(method->{
-            val actionPeer = findActionFacetedMethod(methodScope, method);
+            val actionPeer = findActionFacetedMethod(method);
             if (actionPeer != null) {
                 onActionFacetedMethod.accept(actionPeer);
                 return true;
@@ -394,10 +389,9 @@ public class FacetedMethodsBuilder {
     }
 
     private FacetedMethod findActionFacetedMethod(
-            final MethodScope methodScope,
             final Method actionMethod) {
 
-        if (!representsAction(actionMethod, methodScope)) {
+        if (!representsAction(actionMethod)) {
             return null;
         }
 
@@ -442,8 +436,7 @@ public class FacetedMethodsBuilder {
     }
 
     private boolean representsAction(
-            final Method actionMethod,
-            final MethodScope methodScope) {
+            final Method actionMethod) {
 
         // try to short-circuit as much as possible
         if(explicitActionAnnotationConfigured()) {
@@ -452,7 +445,7 @@ public class FacetedMethodsBuilder {
             }
         }
 
-        if (!MethodUtil.inScope(actionMethod, methodScope)) {
+        if (MethodUtil.isStatic(actionMethod)) {
             return false;
         }
 
@@ -517,24 +510,21 @@ public class FacetedMethodsBuilder {
 
     /**
      *
-     * @param methodScope
      * @param prefix
      * @param returnType
      * @param paramCount
      * @param onRemoved - collecting parameter
      */
     private void findAndRemovePrefixedNonVoidMethods(
-            final MethodScope methodScope,
             final String prefix,
             final Class<?> returnType,
             final int paramCount,
             final Consumer<Method> onRemoved) {
         
-        findAndRemovePrefixedMethods(methodScope, prefix, returnType, CanBeVoid.FALSE, paramCount, onRemoved);
+        findAndRemovePrefixedMethods(prefix, returnType, CanBeVoid.FALSE, paramCount, onRemoved);
     }
 
     private void findAndRemovePrefixedMethods(
-            final MethodScope methodScope,
             final String prefix,
             final Class<?> returnType,
             final CanBeVoid canBeVoid,
@@ -542,7 +532,7 @@ public class FacetedMethodsBuilder {
             Consumer<Method> onMatch) {
         
         methodRemover.acceptRemaining(methodsRemaining->{
-            MethodUtil.removeMethods(methodsRemaining, methodScope, prefix, returnType, canBeVoid, paramCount, onMatch);
+            MethodUtil.removeMethods(methodsRemaining, prefix, returnType, canBeVoid, paramCount, onMatch);
         });
         
     }
diff --git a/core/metamodel/src/test/java/org/apache/isis/metamodel/facets/MethodRemoverForTesting.java b/core/metamodel/src/test/java/org/apache/isis/metamodel/facets/MethodRemoverForTesting.java
index d6ab31e..f2465c8 100644
--- a/core/metamodel/src/test/java/org/apache/isis/metamodel/facets/MethodRemoverForTesting.java
+++ b/core/metamodel/src/test/java/org/apache/isis/metamodel/facets/MethodRemoverForTesting.java
@@ -26,7 +26,6 @@ import java.util.function.Consumer;
 
 import org.apache.isis.metamodel.commons.CanBeVoid;
 import org.apache.isis.metamodel.facetapi.MethodRemover;
-import org.apache.isis.metamodel.methodutils.MethodScope;
 
 import lombok.Getter;
 import lombok.Setter;
@@ -39,7 +38,6 @@ public class MethodRemoverForTesting implements MethodRemover {
     // ////////////////////////////////////////////////////////////
     @Value
     static class RemoveMethodArgs {
-        public MethodScope methodScope;
         public String methodName;
         public Class<?> returnType;
         public Class<?>[] parameterTypes;
@@ -49,14 +47,10 @@ public class MethodRemoverForTesting implements MethodRemover {
     private final List<RemoveMethodArgs> removeMethodArgsCalls = new ArrayList<>();
 
     @Override
-    public void removeMethod(final MethodScope methodScope, final String methodName, final Class<?> returnType, final Class<?>[] parameterTypes) {
-        removeMethodArgsCalls.add(new RemoveMethodArgs(methodScope, methodName, returnType, parameterTypes));
+    public void removeMethod(final String methodName, final Class<?> returnType, final Class<?>[] parameterTypes) {
+        removeMethodArgsCalls.add(new RemoveMethodArgs( methodName, returnType, parameterTypes));
     }
 
-    // ////////////////////////////////////////////////////////////
-    // removeMethod(Method): void
-    // ////////////////////////////////////////////////////////////
-
     @Getter
     private final List<Method> removedMethodMethodCalls = new ArrayList<Method>();
 
@@ -65,17 +59,11 @@ public class MethodRemoverForTesting implements MethodRemover {
         removedMethodMethodCalls.add(method);
     }
 
-    // ////////////////////////////////////////////////////////////
-    // removeMethods(...):List
-    // ////////////////////////////////////////////////////////////
-
     @Setter
     private List<Method> removeMethodsReturn;
 
-
     @Value
     static class RemoveMethodsArgs {
-        public MethodScope methodScope;
         public String prefix;
         public Class<?> returnType;
         public CanBeVoid canBeVoid;
@@ -85,8 +73,8 @@ public class MethodRemoverForTesting implements MethodRemover {
     private final List<RemoveMethodsArgs> removeMethodsArgs = new ArrayList<>();
 
     @Override
-    public void removeMethods(final MethodScope methodScope, final String prefix, final Class<?> returnType, final CanBeVoid canBeVoid, final int paramCount, Consumer<Method> onRemoval) {
-        removeMethodsArgs.add(new RemoveMethodsArgs(methodScope, prefix, returnType, canBeVoid, paramCount));
+    public void removeMethods(final String prefix, final Class<?> returnType, final CanBeVoid canBeVoid, final int paramCount, Consumer<Method> onRemoval) {
+        removeMethodsArgs.add(new RemoveMethodsArgs(prefix, returnType, canBeVoid, paramCount));
     }
 
 
diff --git a/core/persistence/jdo/datanucleus-5/src/test/java/org/apache/isis/runtime/system/ObjectMemberAbstractTest.java b/core/persistence/jdo/datanucleus-5/src/test/java/org/apache/isis/runtime/system/ObjectMemberAbstractTest.java
index ff14ada..3e38d13 100644
--- a/core/persistence/jdo/datanucleus-5/src/test/java/org/apache/isis/runtime/system/ObjectMemberAbstractTest.java
+++ b/core/persistence/jdo/datanucleus-5/src/test/java/org/apache/isis/runtime/system/ObjectMemberAbstractTest.java
@@ -19,13 +19,6 @@
 
 package org.apache.isis.runtime.system;
 
-import org.datanucleus.enhancement.Persistable;
-import org.jmock.Expectations;
-import org.jmock.auto.Mock;
-import org.junit.Before;
-import org.junit.Rule;
-import org.junit.Test;
-
 import org.apache.isis.applib.annotation.Where;
 import org.apache.isis.metamodel.MetaModelContext;
 import org.apache.isis.metamodel.MetaModelContext_forTesting;
@@ -38,11 +31,9 @@ import org.apache.isis.metamodel.facetapi.FeatureType;
 import org.apache.isis.metamodel.facets.FacetedMethod;
 import org.apache.isis.metamodel.facets.all.describedas.DescribedAsFacetAbstract;
 import org.apache.isis.metamodel.facets.all.named.NamedFacetAbstract;
-import org.apache.isis.metamodel.facets.members.disabled.forsession.DisableForSessionFacetAbstract;
 import org.apache.isis.metamodel.facets.members.hidden.HiddenFacetAbstract;
 import org.apache.isis.metamodel.facets.members.hidden.HiddenFacetAbstractAlwaysEverywhere;
 import org.apache.isis.metamodel.facets.members.hidden.HiddenFacetAbstractImpl;
-import org.apache.isis.metamodel.facets.members.hidden.forsession.HideForSessionFacetAbstract;
 import org.apache.isis.metamodel.facets.members.hidden.method.HideForContextFacetNone;
 import org.apache.isis.metamodel.interactions.PropertyUsabilityContext;
 import org.apache.isis.metamodel.interactions.PropertyVisibilityContext;
@@ -60,15 +51,15 @@ import org.apache.isis.security.authentication.AuthenticationSession;
 import org.apache.isis.security.authentication.AuthenticationSessionProvider;
 import org.apache.isis.unittestsupport.jmocking.JUnitRuleMockery2;
 import org.apache.isis.unittestsupport.jmocking.JUnitRuleMockery2.Mode;
+import org.datanucleus.enhancement.Persistable;
+import org.jmock.Expectations;
+import org.jmock.auto.Mock;
+import org.junit.Before;
+import org.junit.Rule;
+import org.junit.Test;
 
-import static org.hamcrest.Matchers.emptyString;
-import static org.hamcrest.Matchers.equalTo;
-import static org.hamcrest.Matchers.is;
-import static org.hamcrest.Matchers.not;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertThat;
-import static org.junit.Assert.assertTrue;
+import static org.hamcrest.Matchers.*;
+import static org.junit.Assert.*;
 
 public class ObjectMemberAbstractTest {
 
@@ -141,19 +132,6 @@ public class ObjectMemberAbstractTest {
     }
 
     @Test
-    public void testAvailableForUser() throws Exception {
-        testMember.addFacet(new DisableForSessionFacetAbstract(testMember) {
-            @Override
-            public String disabledReason(final AuthenticationSession session) {
-                return null;
-            }
-        });
-        final Consent usable = testMember.isUsable(persistentAdapter, InteractionInitiatedBy.USER, Where.ANYWHERE);
-        final boolean allowed = usable.isAllowed();
-        assertTrue(allowed);
-    }
-
-    @Test
     public void testVisibleWhenHiddenFacetSetToAlways() {
         testMember.addFacet(new HideForContextFacetNone(testMember));
         testMember.addFacet(new HiddenFacetAbstract(Where.ANYWHERE, testMember) {
@@ -188,28 +166,6 @@ public class ObjectMemberAbstractTest {
     }
 
     @Test
-    public void testVisibleForSession() {
-        testMember.addFacet(new HideForSessionFacetAbstract(testMember) {
-            @Override
-            public String hiddenReason(final AuthenticationSession session) {
-                return "Hidden";
-            }
-        });
-        assertFalse(testMember.isVisible(persistentAdapter, InteractionInitiatedBy.USER, Where.ANYWHERE).isAllowed());
-    }
-
-    @Test
-    public void testVisibleForSessionFails() {
-        testMember.addFacet(new HideForSessionFacetAbstract(testMember) {
-            @Override
-            public String hiddenReason(final AuthenticationSession session) {
-                return "hidden";
-            }
-        });
-        assertFalse(testMember.isVisible(persistentAdapter, InteractionInitiatedBy.USER, Where.ANYWHERE).isAllowed());
-    }
-
-    @Test
     public void testName() throws Exception {
         final String name = "action name";
         testMember.addFacet(new NamedFacetAbstract(name, true, testMember) {
diff --git a/core/runtime/src/test/java/org/apache/isis/runtime/system/MethodFinderUtilsTest.java b/core/runtime/src/test/java/org/apache/isis/runtime/system/MethodFinderUtilsTest.java
deleted file mode 100644
index fb64229..0000000
--- a/core/runtime/src/test/java/org/apache/isis/runtime/system/MethodFinderUtilsTest.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
- *  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *
- *        http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License.
- */
-
-package org.apache.isis.runtime.system;
-
-import java.lang.reflect.Method;
-import java.util.Arrays;
-import java.util.Collection;
-
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.junit.runners.Parameterized;
-import org.junit.runners.Parameterized.Parameters;
-
-import org.apache.isis.metamodel.commons.ClassExtensions;
-import org.apache.isis.metamodel.commons.MethodUtil;
-import org.apache.isis.metamodel.methodutils.MethodScope;
-
-import static org.hamcrest.CoreMatchers.is;
-import static org.hamcrest.CoreMatchers.not;
-import static org.hamcrest.CoreMatchers.nullValue;
-import static org.junit.Assert.assertThat;
-
-@RunWith(Parameterized.class)
-public class MethodFinderUtilsTest {
-
-    public void someInstanceMethod() {
-    }
-
-    @Test
-    public void all() {
-        Method instanceMethod = ClassExtensions.getMethodElseNull(MethodFinderUtilsTest.class, "someInstanceMethod");
-        assertThat(MethodUtil.inScope(instanceMethod, MethodScope.OBJECT), is(true));
-    }
-
-}