diff options
author | aclement <aclement> | 2006-06-02 07:53:55 +0000 |
---|---|---|
committer | aclement <aclement> | 2006-06-02 07:53:55 +0000 |
commit | a1a4d727398213b19facbd1827cb3373f2f41c0d (patch) | |
tree | cb4c3c34987fb902c34801dfccac7a7fcec146c5 /tests/bugs152 | |
parent | 4513e921c89fb3b8f037418a901e49906724e7bd (diff) | |
download | aspectj-a1a4d727398213b19facbd1827cb3373f2f41c0d.tar.gz aspectj-a1a4d727398213b19facbd1827cb3373f2f41c0d.zip |
testcode for 145018
Diffstat (limited to 'tests/bugs152')
-rw-r--r-- | tests/bugs152/pr145018/Broken.aj | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/tests/bugs152/pr145018/Broken.aj b/tests/bugs152/pr145018/Broken.aj new file mode 100644 index 000000000..373513776 --- /dev/null +++ b/tests/bugs152/pr145018/Broken.aj @@ -0,0 +1,42 @@ +import java.util.*; +import org.aspectj.lang.annotation.*; + +@Aspect +public class Broken { + + @Pointcut("call( * *.someMethod(..)) && args(arg1, arg2, arg3, status) ") + public void someMethod2( int arg1, int arg2, int arg3, Status status ) {} + + @Pointcut("someMethod2(arg1, arg2, arg3, status) && if()") + public static boolean someMethod2if(int arg1, int arg2, int arg3, Status status) { + return status.equals( Status.DELETED ); + } + + @Pointcut("cflow(execution( * *.doProcess(..) ) && args( context, *, args)) && this(SomeClass+) ") + public void inSomeClass2(Context context, Map args) {} + + @After( "inSomeClass2(context,args) && someMethod2if(arg1, arg2, arg3, status) ") + public void deleteManagerInSomeClass2( Context context, Map args, int arg1, int arg2, int arg3, Status status) { +// _log.write( DEBUG, "STATUS2: " + status ); + } +} + +class Status { + public final static int DELETED = 1; +} + +class Context {} + +class SomeClass { + + public void doProcess(Context c,Object o, Map m) { + + someMethod(1,2,3,new Status()); + someMethod(1,2,3,new Status()); + someMethod(1,2,3,new Status()); + } + + public void someMethod(int a, int b, int c, Status s) { + doProcess(null,null,null); + } +} |