summaryrefslogtreecommitdiffstats
path: root/tests/bugs150
diff options
context:
space:
mode:
authoracolyer <acolyer>2005-09-12 10:04:51 +0000
committeracolyer <acolyer>2005-09-12 10:04:51 +0000
commitf5030e64039e19f562423d9c8b7f7b4587ecdea7 (patch)
treed8b0a8a4fafb47a0ac90dc4a5dd50a644a821adb /tests/bugs150
parent64d74013c685a815cbe3565f71747103177daf20 (diff)
downloadaspectj-f5030e64039e19f562423d9c8b7f7b4587ecdea7.tar.gz
aspectj-f5030e64039e19f562423d9c8b7f7b4587ecdea7.zip
tests and fix for pr108903 - MUST process from super aspect to sub aspect when finding declares
Diffstat (limited to 'tests/bugs150')
-rw-r--r--tests/bugs150/pr108903/com/designpattern/decorator/HeaderDecorator.aj19
-rw-r--r--tests/bugs150/pr108903/com/designpattern/decorator/Main.java11
-rw-r--r--tests/bugs150/pr108903/com/designpattern/decorator/Order.java9
-rw-r--r--tests/bugs150/pr108903/com/designpattern/decorator/OrderDecorator.aj17
-rw-r--r--tests/bugs150/pr108903/com/designpattern/decorator/SalesOrder.java5
5 files changed, 61 insertions, 0 deletions
diff --git a/tests/bugs150/pr108903/com/designpattern/decorator/HeaderDecorator.aj b/tests/bugs150/pr108903/com/designpattern/decorator/HeaderDecorator.aj
new file mode 100644
index 000000000..fe9f12b88
--- /dev/null
+++ b/tests/bugs150/pr108903/com/designpattern/decorator/HeaderDecorator.aj
@@ -0,0 +1,19 @@
+/**
+ *
+ */
+package com.designpattern.decorator;
+
+public aspect HeaderDecorator extends OrderDecorator
+{
+
+ void around(Order order) : print(order)
+ {
+ printHeader(order);
+ proceed(order);
+ }
+
+ private void printHeader(Order order)
+ {
+ System.out.println("XYZ Incorporated\nDate of Sale:");
+ }
+}
diff --git a/tests/bugs150/pr108903/com/designpattern/decorator/Main.java b/tests/bugs150/pr108903/com/designpattern/decorator/Main.java
new file mode 100644
index 000000000..580150e79
--- /dev/null
+++ b/tests/bugs150/pr108903/com/designpattern/decorator/Main.java
@@ -0,0 +1,11 @@
+package com.designpattern.decorator;
+
+public class Main {
+ private static Order order;
+
+ public static void main(String[] args) {
+ order = new SalesOrder();
+ order.print();
+
+ }
+}
diff --git a/tests/bugs150/pr108903/com/designpattern/decorator/Order.java b/tests/bugs150/pr108903/com/designpattern/decorator/Order.java
new file mode 100644
index 000000000..8ab3a8eb5
--- /dev/null
+++ b/tests/bugs150/pr108903/com/designpattern/decorator/Order.java
@@ -0,0 +1,9 @@
+package com.designpattern.decorator;
+
+public abstract class Order {
+
+ public void print() {
+ System.out.print("Order.print()") ;
+ }
+
+}
diff --git a/tests/bugs150/pr108903/com/designpattern/decorator/OrderDecorator.aj b/tests/bugs150/pr108903/com/designpattern/decorator/OrderDecorator.aj
new file mode 100644
index 000000000..0c4926bee
--- /dev/null
+++ b/tests/bugs150/pr108903/com/designpattern/decorator/OrderDecorator.aj
@@ -0,0 +1,17 @@
+/**
+ *
+ */
+package com.designpattern.decorator;
+
+public abstract aspect OrderDecorator
+{
+ protected pointcut print(Order order) : target(order) && call(public void print());
+
+ declare parents : SalesOrder extends Order ;
+
+ public void SalesOrder.print()
+ {
+ super.print();
+ }
+
+}
diff --git a/tests/bugs150/pr108903/com/designpattern/decorator/SalesOrder.java b/tests/bugs150/pr108903/com/designpattern/decorator/SalesOrder.java
new file mode 100644
index 000000000..2dd0add5c
--- /dev/null
+++ b/tests/bugs150/pr108903/com/designpattern/decorator/SalesOrder.java
@@ -0,0 +1,5 @@
+package com.designpattern.decorator;
+
+public class SalesOrder {
+
+}