mirror of https://github.com/apache/cloudstack.git
Upgrade Reflections to 0.9.9
Signed-off-by: Rajani Karuturi <rajanikaruturi@gmail.com> This closes #333
This commit is contained in:
parent
c2f2f77ab1
commit
bec44bffb3
2
pom.xml
2
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>
|
||||
|
|
|
|||
|
|
@ -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
|
||||
|
|
|
|||
|
|
@ -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;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue