Certiv Analytics

Certiv Analytics

Innovative Legal Analysis Tools

CallGraph

CallGraph is a view plugin for Eclipse that enables graphical exploration of call and class hierarchies.  Leverages the internal platform Call Hierarchy and Search mechanisms and uses Zest to provide a searchable graphical representation of the caller/callee relations between methods (including constructors and internal classes) and sub/super-class relations between classes.

Designed to help understand complex call and class relations in larger scale applications.

Architecture

Based on:

Development State

Version 0.9.0 (06.15.2010):

  • Re-implemented as a standard editor with linked thumbnail navigation view
  • Added support for class hierarchy display
  • Zoom, snapshot, and multiple layouts/routers implemented


Version 1.0.0 (In development):

  • Dynamic tracing
  • Focus and pin/highlight interesting relationship functions
  • Removal of reflection hacks to work-around existing Zest bugs/limitations

Use

  1. The initial method or class node can be selected by right clicking on a method element or class declaration in the Content Outline view or on a method or class name in a JDT Editor.
  2. Select the CallGraph menu item and choose Caller/Callee or Sub/Superclass.
  3. The CallGraph editor will open automatically.
  4. Right click on method and class nodes in the CallGraph editor to explore individual branches of the call graph.
  5. Click-drag on the editor surface to pan the display.
  6. Right-click on the editor surface to change layout and router algorithms.
  7. Double-click on the editor surface to force a relayout.

Installation & Requirements

  • CallGraph 0.9.0:
    • Installs from update site: http://www.certiv.net/updates
    • Eclipse 3.5.x and JDT
    • Eclipse VM: JDK 1.6+
    • Zest Visualization Toolkit 1.1.0 (standard Galileo release)
  • Faq

    1. Cannot open a method or class from within the JDT editor: (bug) should usually work, but if not, right-click and open the element from the Outline view instead.
    2. Cannot select nodes in the CallGraph editor: (bug) sometimes focus gets lost, so double-click the editor surface (background) to restore.
    3. Layout is messed up, how to relayout: double-click the editor surface to force a relayout.

    License

    Available only under these terms:

    • License:  Standard Eclipse Public License (EPL) version 1.0
    • Copy of the EPL license is included in the plugin along with source