I wanna collect the methods invoked by a specific method both explicitly and implicitly.For example:
Class A {
@Autowired
C c;
foo() {
B b = new B();
b.print("abc");
if (somecondition) {
c.anotherPrint("def");
}
}
Class B {
print(String arg) {
}
}
Class C {
@Autowired
B b;
anotherPrint(String arg) {
b.print(arg);
}
}
From the code above I wanna collect the information that Class A's method foo invoke B's print() method with the argument "abc" and "def".Something like a call graph
A::foo
--> B::print("abc")
--> C::anotherPrint("def")
--> B::print("def")