我正在寻找一个使用 AspectJ 实现虫洞模式的示例(如果 Guice AOP 有能力实现这个,我会感兴趣)。
虫洞本质上允许您在调用流中传递其他参数,例如:
// say we have
class foo {
public int m0 int a, int b) {
return m1(a,b);
}
public int m1 int a, int b) {
return m2(a,b);
}
public int m2 int a, int b) {
return a+b;
}
}
// and I wanted in a non-invasive manner to pass a third parameter of type
class context {
String userName;
long timeCalled;
String path;
}
// I could use an advise to say print the context information
// to trace what was going on without mucking up my method signatures
我相信这个 Ramnivas Laddad 在他的《AspectJ in Action》一书中就有这样的例子。
提前致谢。