Doxygen Output for Liferay 7 CE GA1
Visualize Liferay Classes, Methods; with the help of UML Inheritance, Collaboration diagrams for Classes; and Call, Caller graphs for methods; generated using Doxygen tool.
Check out the following link to try it:
Below's a summary of what you'll find. Also, instructions on how this was done.
Summary of the Doxygen Output
- View class's inheritance diagram; via standard UML notation.
- View class collaboration diagram; via standard UML notation.
- View some additional method details: method source code, call graph, and caller graph.
Helps digesting complex Liferay methods; such as MainServlet.service method; by visualizing method's call graph. The red boxes mean the node has over maximum allowed child nodes; I have chosen 100 for maximum allowed child nodes; others can adjust that value as needed ; see instructions at bottom to do so.
- Additional features thrown in the mix: list all variabels, methods, and more.
- View markdown files included in source code...
- Browse packages included in source code...
How to generate the output yourself
Prerequisites: doxygen 1.8.12 (the main tool which generates output), graphviz (used to generate the UML diagrams via 'dot' command)
1. Install prerequisites: Doxygen and Graphviz
2. Unzip Liferay 7 CE GA1 source code to a directory.
3. Open attached Doxygen configuration file (tested with version 1.8.12)
Update Line 782 from this:
To point to the folder where you have Liferay 7 (or any other version's) source code.
4. Finally run the following command:
With the options in the settings file, this may take several hours to run depending on the machine's processor speed. The resulting output is about 18GB.
There are lots of options in Doxygen. One way to see what options are set is to do the following:
/opt/doxygen/build/bin/doxygen -g default
diff default liferay-portal-src-7.0-ce-ga1
This will show all fields modified by the custom configuration.
Thank you to Liferay and community.