diff options
author | Andy Clement <andrew.clement@gmail.com> | 2012-04-11 17:33:59 -0700 |
---|---|---|
committer | Andy Clement <andrew.clement@gmail.com> | 2012-04-11 17:33:59 -0700 |
commit | 724823aa185922c9d2fd13a0c56049862d3ec0bb (patch) | |
tree | 80f6e6c0ac8f416507504266c9ce8385f09f620c /tests | |
parent | 45cbaf5e89474b34b9804bf8387d2189a6bc2eb6 (diff) | |
download | aspectj-724823aa185922c9d2fd13a0c56049862d3ec0bb.tar.gz aspectj-724823aa185922c9d2fd13a0c56049862d3ec0bb.zip |
declare annotation on type XML support
Diffstat (limited to 'tests')
-rw-r--r-- | tests/bugs170/xmldefs/Anno7.java | 5 | ||||
-rw-r--r-- | tests/bugs170/xmldefs/Hello7.java | 39 | ||||
-rw-r--r-- | tests/bugs170/xmldefs/aop7.xml | 13 |
3 files changed, 57 insertions, 0 deletions
diff --git a/tests/bugs170/xmldefs/Anno7.java b/tests/bugs170/xmldefs/Anno7.java new file mode 100644 index 000000000..36fdeb361 --- /dev/null +++ b/tests/bugs170/xmldefs/Anno7.java @@ -0,0 +1,5 @@ +import java.lang.annotation.*; + +@Retention(RetentionPolicy.RUNTIME) +public @interface Anno7 { +} diff --git a/tests/bugs170/xmldefs/Hello7.java b/tests/bugs170/xmldefs/Hello7.java new file mode 100644 index 000000000..ed43f0145 --- /dev/null +++ b/tests/bugs170/xmldefs/Hello7.java @@ -0,0 +1,39 @@ +import java.lang.annotation.Annotation; +import java.lang.reflect.Field; +import java.util.Collections; +import java.util.*; + +public class Hello7 { + + + public static void main(String[] args) { + printAnnos(Hello7.class); + } + + public static void printAnnos(Class clazz) { + try { + Annotation[] annos = clazz.getAnnotations(); + System.out.println("Annotations on "+clazz.getName()+"? "+(annos!=null && annos.length!=0)); + if (annos!=null && annos.length>0) { + List<Annotation> la = new ArrayList<Annotation>(); + for (Annotation anno: annos) { + la.add(anno); + } + Collections.<Annotation>sort(la,new AnnoComparator()); + + System.out.println("Annotation count is "+annos.length); + for (Annotation anno: la) { + System.out.println(anno); + } + } + } catch (Exception e) { + e.printStackTrace(); + } + } + + static class AnnoComparator implements Comparator<Annotation> { + public int compare(Annotation a, Annotation b) { + return a.toString().compareTo(b.toString()); + } + } +} diff --git a/tests/bugs170/xmldefs/aop7.xml b/tests/bugs170/xmldefs/aop7.xml new file mode 100644 index 000000000..048163f3a --- /dev/null +++ b/tests/bugs170/xmldefs/aop7.xml @@ -0,0 +1,13 @@ +<?xml version="1.0" encoding="UTF-8"?> +<aspectj> + <aspects> + <concrete-aspect name="ConjuredUp"> + <declare-annotation type="H*" annotation="@Anno7"/> + </concrete-aspect> + </aspects> + + <weaver options="-Xreweavable -verbose -XlazyTjp -showWeaveInfo"> + <include within="Hello7"/> + </weaver> +</aspectj> + |