List of usage examples for org.apache.commons.bcel6.classfile AnnotationEntry getAnnotationType
public String getAnnotationType()
From source file:ru.objective.jni.utils.Utils.java
public static String getFieldExportName(Field field) { if (!field.isPublic() || field.isSynthetic()) return null; AnnotationEntry[] entries = field.getAnnotationEntries(); for (AnnotationEntry annotationEntry : entries) { String translated = Signature.translate(annotationEntry.getAnnotationType()); if (translated.equals(OJNIExclude.class.getName())) return null; if (translated.equals(OJNIExportName.class.getName())) { ElementValuePair[] elementValuePairs = annotationEntry.getElementValuePairs(); AnnotationType annotationType = AnnotationType.getInstance(OJNIExportName.class); for (ElementValuePair elementValuePair : elementValuePairs) { if (annotationType.memberTypes().get(elementValuePair.getNameString()) != null) { return elementValuePair.getValue().stringifyValue(); }/*from www . j av a 2 s. c o m*/ } } } return field.getName(); }
From source file:ru.objective.jni.utils.Utils.java
public static MethodExportInfo getMethodExportInfo(Method method) { MethodExportInfo result = new MethodExportInfo(); if (!method.isPublic() || method.isAnnotation() || method.isSynthetic()) return result; String name = method.getName(); AnnotationEntry[] entries = method.getAnnotationEntries(); for (AnnotationEntry annotationEntry : entries) { String translated = Signature.translate(annotationEntry.getAnnotationType()); if (translated.equals(OJNIExclude.class.getName())) return result; if (translated.equals(OJNIExportName.class.getName())) { result.isCustom = true;//from w w w .jav a 2 s . c o m ElementValuePair[] elementValuePairs = annotationEntry.getElementValuePairs(); AnnotationType annotationType = AnnotationType.getInstance(OJNIExportName.class); for (ElementValuePair elementValuePair : elementValuePairs) { if (annotationType.memberTypes().get(elementValuePair.getNameString()) != null) { name = elementValuePair.getValue().stringifyValue(); } } } } result.name = name; return result; }