aboutsummaryrefslogtreecommitdiffstats
path: root/tests/bugs154
diff options
context:
space:
mode:
Diffstat (limited to 'tests/bugs154')
-rwxr-xr-xtests/bugs154/pr194314/test/IService.java6
-rwxr-xr-xtests/bugs154/pr194314/test/Main.java9
-rwxr-xr-xtests/bugs154/pr194314/test/Service.java8
-rwxr-xr-xtests/bugs154/pr194314/test/ServiceInterceptor.java26
4 files changed, 49 insertions, 0 deletions
diff --git a/tests/bugs154/pr194314/test/IService.java b/tests/bugs154/pr194314/test/IService.java
new file mode 100755
index 000000000..0c9bb7757
--- /dev/null
+++ b/tests/bugs154/pr194314/test/IService.java
@@ -0,0 +1,6 @@
+package test;
+
+
+public interface IService {
+ void method(long l) throws Exception;
+}
diff --git a/tests/bugs154/pr194314/test/Main.java b/tests/bugs154/pr194314/test/Main.java
new file mode 100755
index 000000000..d1e699369
--- /dev/null
+++ b/tests/bugs154/pr194314/test/Main.java
@@ -0,0 +1,9 @@
+package test;
+
+public class Main {
+
+ public static void main(String[] args) throws Exception {
+ IService service = new Service();
+ service.method(42L);
+ }
+}
diff --git a/tests/bugs154/pr194314/test/Service.java b/tests/bugs154/pr194314/test/Service.java
new file mode 100755
index 000000000..0a409c60a
--- /dev/null
+++ b/tests/bugs154/pr194314/test/Service.java
@@ -0,0 +1,8 @@
+package test;
+
+public class Service implements IService {
+
+ public void method(long l) throws Exception {
+ System.err.println("Original impl of service method, arg " + l);
+ }
+}
diff --git a/tests/bugs154/pr194314/test/ServiceInterceptor.java b/tests/bugs154/pr194314/test/ServiceInterceptor.java
new file mode 100755
index 000000000..491fa5027
--- /dev/null
+++ b/tests/bugs154/pr194314/test/ServiceInterceptor.java
@@ -0,0 +1,26 @@
+package test;
+
+import org.aspectj.lang.ProceedingJoinPoint;
+import org.aspectj.lang.annotation.Around;
+import org.aspectj.lang.annotation.Aspect;
+
+ @Aspect public class ServiceInterceptor {
+//public aspect ServiceInterceptor {
+
+// void around(): execution(void test.Service.method(long)) {
+// Object[] args = thisJoinPoint.getArgs();
+// long id = (Long) args[0];
+// System.out.println("in advice, arg = " + id + " (before proceed)");
+// proceed();
+// System.out.println("in advice (after proceed)");
+// }
+
+ @Around("execution(void test.Service.method(long))")
+ public void method(ProceedingJoinPoint pjp) throws Throwable {
+ Object[] args = pjp.getArgs();
+ long id = (Long) args[0];
+ System.out.println("in advice, arg = " + id + " (before proceed)");
+ pjp.proceed(pjp.getArgs());
+ System.out.println("in advice (after proceed)");
+ }
+}