Name | Description | Depends | License |
Core | Core libraries and supporting files. | | |
Servers | Server components used by the solution. | | |
HSQLDB | Relational database server for storing parsed sources and review reports is required by the Hammurapi Ant task. | | HSQLDB |
Apache Tomcat | Servlet container to host the reporter web application. The reporter web application can be hosted in any servlet container. Tomcat is bundled with the solution for convenience. | | Apache |
Language modules | Language modules parse source files and build object model of source file convenient for review. The model can be a homogeneous abstract syntax tree (e.g. XML file without schema), heterogeneous abstract syntax tree (e.g. XML file with schema compiled by XML Beans), or heterogeneous abstract semantic graph (e.g. Java source file). | | |
Java | Java language module builds a heterogeneous abstract semantic graph representing Java source files. The graph provides means to resolve type references, variable/field definitions and method calls. It allows to write powerful yet concise inspectors. | | LGPL |
XML Language Module | XML language module represents XML sources as homogeneous (DOM) or heterogeneous (XML Beans generated classes) trees. | | LGPL |
XML Language Module Core Libraries | Foundation libraries of the module. | | |
J2EE 1.4 deployment descriptors | J2EE 1.4 deployment descriptors schemas compiled to Java with XML Beans. With this module J2EE deployment descriptors (e.g. web.xml) are represented as heterogeneous object tree, which simplifies development of inspectors. | XML Language Module Core Libraries | Public domain |
WSDL | WSDL schemas compiled to Java with XML Beans. With this module WSDL descriptors are represented as heterogeneous object tree, which simplifies development of inspectors. | XML Language Module Core Libraries | |
Inspector sets | Collections of inspectors. | | |
Java Inspectors | Java inspectors analyze Java source code, check for potential problems, report deviations from coding guidelines and collect metrics. | Java | LGPL |
J2EE Descriptors Inspectors | J2EE descriptors inspectors check J2EE deployment descriptors for compliance with development guidelines. | XML Language Module Core Libraries, J2EE 1.4 deployment descriptors | |
IDE integration | Plug-ins for integrated development environments. | | |
Eclipse | Eclipse plug-in brings automated code reviews to developer's fingertips, shortening validate-fix cycle. The plug-in requires minimal configuration. It loads configuration and inspectors from a central location specified by configuration URL. It allows to make inspector set updates transparent for developers. | | Free for non-commercial use. |
Apache Ant | Build tool. Hammurapi provides an Ant task to perform reviews. Install it if you don't have it already in your environment. | | Apache |
Sample project | Sample project with automated code review integrated into the build process. | Java Inspectors | LGPL |
Developer resources | Resources for developers willing to extend the solution, e.g. create additional inspectors. | | |
Developer documentation | Developer documentation for Hammurapi Group products constituting the solution. | | |
Sources | Source files for open source Hammurapi Group products constituting the solution. | | LGPL |
Inspector developer workbench | Eclpse project for developing inspectors. | Sources, Developer documentation, Java | LGPL |
Reference report | Sample HTML report produced by Hammurapi. | | |