Author: rmannibucau
Date: Tue May 1 19:14:15 2012
New Revision: 1332786
URL: http://svn.apache.org/viewvc?rev=1332786&view=rev
Log:
minor optim aggregating JSF and WEB classes to scan in a static variable
instead of creating it each time (easier to read more than faster)
Modified:
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/config/AnnotationDeployer.java
Modified:
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/config/AnnotationDeployer.java
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/config/AnnotationDeployer.java?rev=1332786&r1=1332785&r2=1332786&view=diff
==============================================================================
---
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/config/AnnotationDeployer.java
(original)
+++
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/config/AnnotationDeployer.java
Tue May 1 19:14:15 2012
@@ -256,6 +256,12 @@ public class AnnotationDeployer implemen
"javax.servlet.annotation.WebListener"
};
+ private static final Collection<String> API_CLASSES = new
ArrayList<String>(WEB_CLASSES.length + JSF_CLASSES.length);
+ static {
+ API_CLASSES.addAll(Arrays.asList(JSF_CLASSES));
+ API_CLASSES.addAll(Arrays.asList(WEB_CLASSES));
+ }
+
public static final Set<String> knownResourceEnvTypes = new
TreeSet<String>(asList(
"javax.ejb.EJBContext",
"javax.ejb.SessionContext",
@@ -1093,10 +1099,8 @@ public class AnnotationDeployer implemen
continue;
}
- final List<Class<?>> found =
finder.findAnnotatedClasses(clazz);
- for (Class<?> annotatedClass : found) {
-
webModule.getWebAnnotatedClasses().add(annotatedClass.getName());
- }
+ final List<Annotated<Class<?>>> found =
finder.findMetaAnnotatedClasses(clazz);
+ webModule.getWebAnnotatedClasses().addAll(metaToStr(found));
}
return webModule;
@@ -2001,11 +2005,7 @@ public class AnnotationDeployer implemen
IAnnotationFinder finder = webModule.getFinder();
if (finder != null) {
- final List<String> apis = new
ArrayList<String>(WEB_CLASSES.length + JSF_CLASSES.length);
- apis.addAll(Arrays.asList(JSF_CLASSES));
- apis.addAll(Arrays.asList(WEB_CLASSES));
-
- for (String apiClassName : apis) {
+ for (String apiClassName : API_CLASSES) {
final Class<? extends Annotation> clazz;
try {
clazz = (Class<? extends Annotation>)
classLoader.loadClass(apiClassName);
@@ -2013,8 +2013,8 @@ public class AnnotationDeployer implemen
continue;
}
- final List<Class<?>> found =
finder.findAnnotatedClasses(clazz);
- classes.addAll(found);
+ final List<Annotated<Class<?>>> found =
finder.findMetaAnnotatedClasses(clazz);
+ classes.addAll(metaToClass(found));
}
}
@@ -5065,4 +5065,20 @@ public class AnnotationDeployer implemen
}
return rawClassName;
}
+
+ private static Collection<Class<?>> metaToClass(List<Annotated<Class<?>>>
found) {
+ final Collection<Class<?>> classes = new
ArrayList<Class<?>>(found.size());
+ for (Annotated<Class<?>> clazz : found) {
+ classes.add(clazz.get());
+ }
+ return classes;
+ }
+
+ private static Collection<String> metaToStr(List<Annotated<Class<?>>>
found) {
+ final Collection<String> classes = new ArrayList<String>(found.size());
+ for (Annotated<Class<?>> clazz : found) {
+ classes.add(clazz.get().getName());
+ }
+ return classes;
+ }
}