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 09:42:19 UTC

[isis] 05/08: ISIS-2195: quits introspecting if method is not annotated with @Action but explicit action annotations required.

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 8aa82557125cddb7172f4a1407f1a67eba39af0c
Author: danhaywood <da...@haywood-associates.co.uk>
AuthorDate: Tue Dec 3 06:59:02 2019 +0000

    ISIS-2195: quits introspecting if method is not annotated with @Action but explicit action annotations required.
---
 .../isis/metamodel/specloader/specimpl/FacetedMethodsBuilder.java  | 7 +++++++
 1 file changed, 7 insertions(+)

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 a9d9d52..0cb0855 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
@@ -452,6 +452,13 @@ public class FacetedMethodsBuilder {
             final Method actionMethod,
             final MethodScope methodScope) {
 
+        // try to short-circuit as much as possible
+        if(explicitActionAnnotationConfigured()) {
+            if(!_Annotations.isPresent(actionMethod, Action.class)) {
+                return false;
+            }
+        }
+
         if (!MethodUtil.inScope(actionMethod, methodScope)) {
             return false;
         }