You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by ek...@apache.org on 2015/06/08 11:45:44 UTC
[23/50] [abbrv] git commit: updated refs/heads/feature/vpc-ipv6 to
6140db5
Upgrade Reflections to 0.9.9
Signed-off-by: Rajani Karuturi <ra...@gmail.com>
This closes #333
Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/bec44bff
Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/bec44bff
Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/bec44bff
Branch: refs/heads/feature/vpc-ipv6
Commit: bec44bffb3ed415315793cf83603ce13bf865ff0
Parents: c2f2f77
Author: Rafael da Fonseca <rs...@gmail.com>
Authored: Fri May 29 23:32:35 2015 +0200
Committer: Rajani Karuturi <ra...@gmail.com>
Committed: Wed Jun 3 11:01:32 2015 +0530
----------------------------------------------------------------------
pom.xml | 2 +-
server/src/com/cloud/api/doc/ApiXmlDocWriter.java | 5 ++++-
utils/src/com/cloud/utils/ReflectUtil.java | 12 ++++++++++--
3 files changed, 15 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/bec44bff/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 6e3730b..fa019ef 100644
--- a/pom.xml
+++ b/pom.xml
@@ -88,7 +88,7 @@
<cs.lang.version>2.6</cs.lang.version>
<cs.commons-io.version>2.4</cs.commons-io.version>
<cs.commons-validator.version>1.4.0</cs.commons-validator.version>
- <cs.reflections.version>0.9.8</cs.reflections.version>
+ <cs.reflections.version>0.9.9</cs.reflections.version>
<cs.java-ipv6.version>0.15</cs.java-ipv6.version>
<cs.replace.properties>build/replace.properties</cs.replace.properties>
<cs.libvirt-java.version>0.5.1</cs.libvirt-java.version>
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/bec44bff/server/src/com/cloud/api/doc/ApiXmlDocWriter.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/api/doc/ApiXmlDocWriter.java b/server/src/com/cloud/api/doc/ApiXmlDocWriter.java
index 2d2cada..166af4b 100644
--- a/server/src/com/cloud/api/doc/ApiXmlDocWriter.java
+++ b/server/src/com/cloud/api/doc/ApiXmlDocWriter.java
@@ -96,12 +96,15 @@ public class ApiXmlDocWriter {
}
public static void main(String[] args) {
-
Set<Class<?>> cmdClasses = ReflectUtil.getClassesWithAnnotation(APICommand.class, new String[] {"org.apache.cloudstack.api", "com.cloud.api",
"com.cloud.api.commands", "com.globo.globodns.cloudstack.api", "org.apache.cloudstack.network.opendaylight.api",
"com.cloud.api.commands.netapp", "org.apache.cloudstack.api.command.admin.zone", "org.apache.cloudstack.network.contrail.api.command"});
for (Class<?> cmdClass : cmdClasses) {
+ if(cmdClass.getAnnotation(APICommand.class)==null){
+ System.out.println("Warning, API Cmd class " + cmdClass.getName() + " has no APICommand annotation ");
+ continue;
+ }
String apiName = cmdClass.getAnnotation(APICommand.class).name();
if (s_apiNameCmdClassMap.containsKey(apiName)) {
// handle API cmd separation into admin cmd and user cmd with the common api name
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/bec44bff/utils/src/com/cloud/utils/ReflectUtil.java
----------------------------------------------------------------------
diff --git a/utils/src/com/cloud/utils/ReflectUtil.java b/utils/src/com/cloud/utils/ReflectUtil.java
index 9c09980..c8ae954 100644
--- a/utils/src/com/cloud/utils/ReflectUtil.java
+++ b/utils/src/com/cloud/utils/ReflectUtil.java
@@ -37,6 +37,10 @@ import java.util.Set;
import org.apache.log4j.Logger;
import org.reflections.Reflections;
+import org.reflections.util.ConfigurationBuilder;
+import org.reflections.util.ClasspathHelper;
+import org.reflections.scanners.SubTypesScanner;
+import org.reflections.scanners.TypeAnnotationsScanner;
import com.google.common.collect.ImmutableSet;
@@ -45,6 +49,7 @@ import com.cloud.utils.exception.CloudRuntimeException;
public class ReflectUtil {
private static final Logger s_logger = Logger.getLogger(ReflectUtil.class);
+ private static final Logger logger = Logger.getLogger(Reflections.class);
public static Pair<Class<?>, Field> getAnyField(Class<?> clazz, String fieldName) {
try {
@@ -65,10 +70,13 @@ public class ReflectUtil {
public static Set<Class<?>> getClassesWithAnnotation(Class<? extends Annotation> annotation, String[] packageNames) {
Reflections reflections;
Set<Class<?>> classes = new HashSet<Class<?>>();
+ ConfigurationBuilder builder=new ConfigurationBuilder();
for (String packageName : packageNames) {
- reflections = new Reflections(packageName);
- classes.addAll(reflections.getTypesAnnotatedWith(annotation));
+ builder.addUrls(ClasspathHelper.forPackage(packageName));
}
+ builder.setScanners(new SubTypesScanner(),new TypeAnnotationsScanner());
+ reflections = new Reflections(builder);
+ classes.addAll(reflections.getTypesAnnotatedWith(annotation));
return classes;
}