[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
Re: [aspectj-users] (no subject)
|
Hi,
I don't have a complete solution for you to pick up and use but this
aspect kind of does it:
aspect CallGraph {
int indent =0;
before(): call(* *(..)) && !within(CallGraph) {
for (int i=0;i<indent;i++) { System.out.print(" ");}
System.out.println("> "+thisJoinPointStaticPart);
indent++;
}
after(): call(* *(..))&& !within(CallGraph) {
indent--;
}
}
public class Code {
public static void main(String []argv) {
new Code().foo();
new Code().bar();
}
public void foo() {
bar();
}
public void bar() {
boo();
}
public void boo() {
System.out.println("Hello World");
}
}
Running it gives:
$ java Code
> call(void Code.foo())
> call(void Code.bar())
> call(void Code.boo())
> call(void java.io.PrintStream.println(String))
Hello World
> call(void Code.bar())
> call(void Code.boo())
> call(void java.io.PrintStream.println(String))
Hello World
Andy
On 15 October 2011 07:19, Shambhavi Joshi <shambhavi.jj@xxxxxxxxx> wrote:
> Hello
>
> I want to design a code for generating a run-time call graph for a
> Java program using AspectJ.
> Can anybody tell me how to go about it?? please its urgent.
> Is there any algorithm available, if yes, then please provide /suggest
> me the same.
>
> Please do reply ASAP
> Shambhavi
> _______________________________________________
> aspectj-users mailing list
> aspectj-users@xxxxxxxxxxx
> https://dev.eclipse.org/mailman/listinfo/aspectj-users
>