Again, I don't think there is any direct way of doing this, but something that comes to my mind is the following:
* this only works if all other advice used are around() with proceed() * set the InterceptAspect to the lowest precendence (ie- runs last) * then set your pointcut to capture all method executions that are !(cflow(adviceexecution()) && within(ParentAspect+) * Also, this will not work if you have advice being applied more than once in your stack. I haven't tried this, but it might work for you. On Sun, Aug 16, 2009 at 9:47 AM, ppkluk<[email protected]> wrote: > > Hi Andrew, > > why i want to reference to pointcut defined in other aspects is that, > i want to be able to " capture the joinpoint that is not captured by any > other pointcut defined in a set of aspects". > > maybe my i have to revise the InterceptAspect as following: > > public aspect InterceptAspect{ > > //this advice don't compile, with error message: Syntax error on token ".", > "name pattern" expected > > // ==> try to capture the method execution in classes in a packages > "test.mycode" , > //which is not captured by other pointcut defined in ParentAspect and its > sub-aspects. > > void around(): execution(* test.mycode..*(..)) && > !ParentAspect+.monitorPoint(){ > > //do something interested > System.out.println("This method execution is not captured by other > aspect, except InterceptAspect"); > > proceed(); > } > > i don't know how to achieve this.. > > thank you. > > ppk _______________________________________________ aspectj-users mailing list [email protected] https://dev.eclipse.org/mailman/listinfo/aspectj-users
