Repository: tomee
Updated Branches:
  refs/heads/tomee-1.7.x b4c50a7e1 -> 8ce527a2e


TOMEE-1535 don't scan @Path on methods only to skip subresources


Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/8ce527a2
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/8ce527a2
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/8ce527a2

Branch: refs/heads/tomee-1.7.x
Commit: 8ce527a2e86edc6af08f8232f6bbb33c09dcea2b
Parents: b4c50a7
Author: Romain Manni-Bucau <[email protected]>
Authored: Mon Mar 30 10:57:13 2015 +0200
Committer: Romain Manni-Bucau <[email protected]>
Committed: Mon Mar 30 10:57:13 2015 +0200

----------------------------------------------------------------------
 .../openejb/config/AnnotationDeployer.java      | 25 ++++++++++----------
 1 file changed, 13 insertions(+), 12 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tomee/blob/8ce527a2/container/openejb-core/src/main/java/org/apache/openejb/config/AnnotationDeployer.java
----------------------------------------------------------------------
diff --git 
a/container/openejb-core/src/main/java/org/apache/openejb/config/AnnotationDeployer.java
 
b/container/openejb-core/src/main/java/org/apache/openejb/config/AnnotationDeployer.java
index f9ee4ec..911a3a8 100644
--- 
a/container/openejb-core/src/main/java/org/apache/openejb/config/AnnotationDeployer.java
+++ 
b/container/openejb-core/src/main/java/org/apache/openejb/config/AnnotationDeployer.java
@@ -5432,20 +5432,21 @@ public class AnnotationDeployer implements 
DynamicDeployer {
             }
         }
 
-        // methods annotations: inheritance is managed like it to be more 
efficient
-        final List<Annotated<Method>> methods = 
finder.findMetaAnnotatedMethods(Path.class);
-        for (final Annotated<Method> aMethod : methods) {
-            final Method method = aMethod.get();
-            final Class<?> clazz = method.getDeclaringClass();
-
-            if (isInstantiable(clazz)) {
-                if (!isEJB(clazz)) {
+        if 
("true".equalsIgnoreCase(SystemInstance.get().getProperty("openejb.jaxrs.scanning.methods",
 "false"))) {
+            final List<Annotated<Method>> methods = 
finder.findMetaAnnotatedMethods(Path.class);
+            for (final Annotated<Method> aMethod : methods) {
+                final Method method = aMethod.get();
+                final Class<?> clazz = method.getDeclaringClass();
+
+                if (isInstantiable(clazz)) {
+                    if (!isEJB(clazz)) {
+                        classes.add(clazz.getName());
+                    } else {
+                        webModule.getEjbRestServices().add(clazz.getName());
+                    }
+                } else if (isEJB(clazz) && DynamicSubclass.isDynamic(clazz)) {
                     classes.add(clazz.getName());
-                } else {
-                    webModule.getEjbRestServices().add(clazz.getName());
                 }
-            } else if (isEJB(clazz) && DynamicSubclass.isDynamic(clazz)) {
-                classes.add(clazz.getName());
             }
         }
 

Reply via email to