Apnoe is a static code analyzer tool mainly used to visualize call hierarchies of java code. Use it to get an idea about methods are involved in different runtime scenarios or just to impress some people with the complexity of your code :).
A good starting point is the GraphViewerApp. This application uses the GraphStreamer Library to visualize a call hierarchy graph.
Actually this is a work in progress project. The GraphViewerApp is under heavy development and far from finished but it gives you an idea what i try to achieve with apnoe. So head over to the "Where to start" chapter if you like to try it for your own.
Apnoe is a Software-Library and a Standalone application at the same time. All its included applications (that we cover in the following chapters) utilizes the Apnoe Library. The Apnoe Library is a collection of services for static code analysis.
This little application can be used to analyze the call hierarchy of a piece of java source and sends the result to system out. All you have to do is to start the application with your favorite IDE or via cmd line. Let's have a closer look at the program parameters.
- Proper scaling of nodes and names when zoom in and out
- Better visualization of block-nodes like if,else etc.