diff options
Diffstat (limited to 'tests/bugs154/pr194314/test/ServiceInterceptor.java')
-rwxr-xr-x | tests/bugs154/pr194314/test/ServiceInterceptor.java | 26 |
1 files changed, 26 insertions, 0 deletions
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)");
+ }
+}
|