aboutsummaryrefslogtreecommitdiffstats
path: root/tests/bugs150
diff options
context:
space:
mode:
authoracolyer <acolyer>2005-11-21 17:15:51 +0000
committeracolyer <acolyer>2005-11-21 17:15:51 +0000
commit5947ce663998ee3a8f332586175d287ad3f52f65 (patch)
treedf70371f4e7337528a71ac88806f3d3a2b56d1b5 /tests/bugs150
parent2d0af56cbcad1de209d5432fca11c02ae8e26566 (diff)
downloadaspectj-5947ce663998ee3a8f332586175d287ad3f52f65.tar.gz
aspectj-5947ce663998ee3a8f332586175d287ad3f52f65.zip
test (passing) for pr113368. Tests for reading compiled pointcuts from reflection world.
Diffstat (limited to 'tests/bugs150')
-rw-r--r--tests/bugs150/Pr113368.aj36
1 files changed, 36 insertions, 0 deletions
diff --git a/tests/bugs150/Pr113368.aj b/tests/bugs150/Pr113368.aj
new file mode 100644
index 000000000..b9d067df6
--- /dev/null
+++ b/tests/bugs150/Pr113368.aj
@@ -0,0 +1,36 @@
+public aspect Pr113368 {
+
+ private pointcut managedBeanConstruction(ManagedBean bean) :
+ execution(ManagedBean+.new(..)) && this(bean);
+
+ //NPE's on the if pointcut below
+ private pointcut topLevelManagedBeanConstruction(ManagedBean bean) :
+ managedBeanConstruction(bean) &&
+ if(thisJoinPointStaticPart.getSignature().getDeclaringType() == bean.getClass());
+
+ after(ManagedBean bean) returning: topLevelManagedBeanConstruction(bean) {
+ System.out.println("I just constructed " + bean);
+ }
+
+ public static void main(String[] args) {
+ new ManagedBean("super-bean");
+ new ManagedSubBean();
+ }
+
+}
+
+class ManagedBean {
+
+ public ManagedBean(String s) {
+ System.out.println(s);
+ }
+}
+
+
+class ManagedSubBean extends ManagedBean {
+
+ public ManagedSubBean() {
+ super("sub-bean");
+ }
+
+} \ No newline at end of file