【发布时间】:2011-01-31 11:10:20
【问题描述】:
我有一个注释@AppManaged,它用于表示需要编织某些行为的类。编织的一种行为是将方法调用转换为并发GPars(一个groovy并行库)调用。
但是,我不希望在同一个类上调用嵌套方法。 所以……
@AppManaged
class someclass
{
public void method1(){
method2(); **// should not be advised**
}
public void method2(){
}
}
但是,如果方法调用是从 AppManaged 类到另一个类,那么它应该被建议,因此像 !cflowbelow(@within(AppManaged)) 这样的东西没有帮助。
@AppManaged
class Someotherclass
{
private someclass s;
public void method3(){
s.method2();**// Should be advised.**
}
}
基本上,我正在寻找一个切入点,它只匹配同一对象实例中的嵌套调用并阻止它们被建议。
任何帮助将不胜感激。
感谢和问候 亚伯拉罕·梅纳切里。
【问题讨论】:
标签: annotations aspectj