1.1 --- a/javap/src/main/java/sun/tools/javap/ClassData.java Sun Nov 11 13:23:52 2012 +0100
1.2 +++ b/javap/src/main/java/sun/tools/javap/ClassData.java Mon Nov 12 00:07:34 2012 +0100
1.3 @@ -373,9 +373,16 @@
1.4 /**
1.5 * Returns list of attributes.
1.6 */
1.7 - public AttrData[] getAttributes(){
1.8 + final AttrData[] getAttributes(){
1.9 return attrs;
1.10 }
1.11 +
1.12 + public byte[] findAnnotationData(boolean classRetention) {
1.13 + String n = classRetention ?
1.14 + "RuntimeInvisibleAnnotations" : // NOI18N
1.15 + "RuntimeVisibleAnnotations"; // NOI18N
1.16 + return findAttr(n, attrs);
1.17 + }
1.18
1.19 /**
1.20 * Returns true if superbit is set.
1.21 @@ -695,4 +702,13 @@
1.22 arr[0] = getClassName(c2.cpx1);
1.23 return getNameAndType(c2.cpx2, 1, arr);
1.24 }
1.25 +
1.26 + static byte[] findAttr(String n, AttrData[] attrs) {
1.27 + for (AttrData ad : attrs) {
1.28 + if (n.equals(ad.getAttrName())) {
1.29 + return ad.getData();
1.30 + }
1.31 + }
1.32 + return null;
1.33 + }
1.34 }