"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
-<title>JavaInspect - Utility to visualize java software</title>
-<!-- 2015-03-07 Sat 00:10 -->
+<!-- 2016-11-09 Wed 12:09 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
+<meta name="viewport" content="width=device-width, initial-scale=1" />
+<title>JavaInspect - Utility to visualize java software</title>
<meta name="generator" content="Org-mode" />
<meta name="author" content="Svjatoslav Agejenko" />
<style type="text/css">
<!--/*--><![CDATA[/*><!--*/
- .title { text-align: center; }
+ .title { text-align: center;
+ margin-bottom: .2em; }
+ .subtitle { text-align: center;
+ font-size: medium;
+ font-weight: bold;
+ margin-top:0; }
.todo { font-family: monospace; color: red; }
- .done { color: green; }
+ .done { font-family: monospace; color: green; }
+ .priority { font-family: monospace; color: orange; }
.tag { background-color: #eee; font-family: monospace;
padding: 2px; font-size: 80%; font-weight: normal; }
.timestamp { color: #bebebe; }
.timestamp-kwd { color: #5f9ea0; }
- .right { margin-left: auto; margin-right: 0px; text-align: right; }
- .left { margin-left: 0px; margin-right: auto; text-align: left; }
- .center { margin-left: auto; margin-right: auto; text-align: center; }
+ .org-right { margin-left: auto; margin-right: 0px; text-align: right; }
+ .org-left { margin-left: 0px; margin-right: auto; text-align: left; }
+ .org-center { margin-left: auto; margin-right: auto; text-align: center; }
.underline { text-decoration: underline; }
#postamble p, #preamble p { font-size: 90%; margin: .2em; }
p.verse { margin-left: 3%; }
caption.t-above { caption-side: top; }
caption.t-bottom { caption-side: bottom; }
td, th { vertical-align:top; }
- th.right { text-align: center; }
- th.left { text-align: center; }
- th.center { text-align: center; }
- td.right { text-align: right; }
- td.left { text-align: left; }
- td.center { text-align: center; }
+ th.org-right { text-align: center; }
+ th.org-left { text-align: center; }
+ th.org-center { text-align: center; }
+ td.org-right { text-align: right; }
+ td.org-left { text-align: left; }
+ td.org-center { text-align: center; }
dt { font-weight: bold; }
- .footpara:nth-child(2) { display: inline; }
- .footpara { display: block; }
+ .footpara { display: inline; }
.footdef { margin-bottom: 1em; }
.figure { padding: 1em; }
.figure p { text-align: center; }
<h2>Table of Contents</h2>
<div id="text-table-of-contents">
<ul>
-<li><a href="#sec-1">1. General</a></li>
-<li><a href="#sec-2">2. Example graphs</a></li>
-<li><a href="#sec-3">3. Usage</a>
+<li><a href="#orgheadline1">1. General</a></li>
+<li><a href="#orgheadline2">2. Example graphs</a></li>
+<li><a href="#orgheadline6">3. Usage</a>
<ul>
-<li><a href="#sec-3-1">3.1. example 1: individually picked objects</a></li>
-<li><a href="#sec-3-2">3.2. example 2: scan java code, apply filters</a></li>
-<li><a href="#sec-3-3">3.3. example 3: GraphViz embedded in another project</a></li>
+<li><a href="#orgheadline3">3.1. example 1: individually picked objects</a></li>
+<li><a href="#orgheadline4">3.2. example 2: scan java code, apply filters</a></li>
+<li><a href="#orgheadline5">3.3. example 3: GraphViz embedded in another project</a></li>
</ul>
</li>
-<li><a href="#sec-4">4. Embedding JavaInspect in your Maven project</a></li>
-<li><a href="#sec-5">5. Requirements</a></li>
-<li><a href="#sec-6">6. <span class="todo TODO">TODO</span> </a></li>
+<li><a href="#orgheadline7">4. Embedding JavaInspect in your Maven project</a></li>
+<li><a href="#orgheadline8">5. Requirements</a></li>
+<li><a href="#orgheadline9">6. TO DO</a></li>
</ul>
</div>
</div>
<hr />
<ul class="org-ul">
-<li><a href="http://www2.svjatoslav.eu/gitweb/?p=javainspect.git;a=snapshot;h=HEAD;sf=tgz">download latest snapshot</a>
-</li>
+<li><a href="http://www2.svjatoslav.eu/gitweb/?p=javainspect.git;a=snapshot;h=HEAD;sf=tgz">download latest snapshot</a></li>
<li>This program is free software; you can redistribute it and/or modify
it under the terms of version 3 of the <a href="https://www.gnu.org/licenses/lgpl.html">GNU Lesser General Public
-License</a> or later as published by the Free Software Foundation.
-</li>
+License</a> or later as published by the Free Software Foundation.</li>
<li>Program author:
<ul class="org-ul">
-<li>Svjatoslav Agejenko
-</li>
-<li>Homepage: <a href="http://svjatoslav.eu">http://svjatoslav.eu</a>
-</li>
-<li>Email: <a href="mailto://svjatoslav@svjatoslav.eu">mailto://svjatoslav@svjatoslav.eu</a>
-</li>
-</ul>
-</li>
+<li>Svjatoslav Agejenko</li>
+<li>Homepage: <a href="http://svjatoslav.eu/">http://svjatoslav.eu/</a></li>
+<li>Email: <a href="mailto://svjatoslav@svjatoslav.eu/">mailto://svjatoslav@svjatoslav.eu/</a></li>
+</ul></li>
-<li><a href="http://svjatoslav.eu/programs.jsp">other applications hosted at svjatoslav.eu</a>
-</li>
+<li><a href="http://svjatoslav.eu/programs.jsp">other applications hosted at svjatoslav.eu</a></li>
</ul>
-<div id="outline-container-sec-1" class="outline-2">
-<h2 id="sec-1"><span class="section-number-2">1</span> General</h2>
+<div id="outline-container-orgheadline1" class="outline-2">
+<h2 id="orgheadline1"><span class="section-number-2">1</span> General</h2>
<div class="outline-text-2" id="text-1">
<p>
Goal: simplify/speed up understanding the computer program code by
</p>
<ol class="org-ol">
-<li>Add JavaInspect library in your project as a dependency.
-</li>
+<li>Add JavaInspect library in your project as a dependency.</li>
<li>Create new Java project for the purpose visualizing your other
projects and include JavaInspect and your projecs binary artifacts
(Jar's) into new project classpath. Built binary Jar's (with no
source code) are sufficient because JavaInspect operates via
-reflection.
-</li>
+reflection.</li>
</ol>
<p>
</div>
</div>
-<div id="outline-container-sec-2" class="outline-2">
-<h2 id="sec-2"><span class="section-number-2">2</span> Example graphs</h2>
+<div id="outline-container-orgheadline2" class="outline-2">
+<h2 id="orgheadline2"><span class="section-number-2">2</span> Example graphs</h2>
<div class="outline-text-2" id="text-2">
<ul class="org-ul">
-<li>A very simple example:
+<li><p>
+A very simple example:
+</p>
<div class="figure">
<div class="figure">
<p><img src="legend.png" alt="legend.png" />
</p>
-</div>
-</li>
+</div></li>
-<li>Example visualization of <a href="http://www2.svjatoslav.eu/gitbrowse/sixth/doc/">Sixth</a> project: <a href="http://www2.svjatoslav.eu/projects/sixth/codegraphs/">architecture graphs</a>.
-</li>
+<li>Example visualization of <a href="http://www2.svjatoslav.eu/gitbrowse/sixth/doc/">Sixth</a> project: <a href="http://www2.svjatoslav.eu/projects/sixth/codegraphs/">architecture graphs</a>.</li>
</ul>
</div>
</div>
-<div id="outline-container-sec-3" class="outline-2">
-<h2 id="sec-3"><span class="section-number-2">3</span> Usage</h2>
+<div id="outline-container-orgheadline6" class="outline-2">
+<h2 id="orgheadline6"><span class="section-number-2">3</span> Usage</h2>
<div class="outline-text-2" id="text-3">
<p>
Currently the only way to control JavaInspect is by using Java
Control code in general does the following:
</p>
<ol class="org-ol">
-<li>Create graph object.
-</li>
+<li>Create graph object.</li>
<li>Java reflection/classloaders does not provide mechanism for
discovering all classes under given package. Therefore you need to
declare at least some classes to be added to the graph by:
<ul class="org-ul">
-<li>Manually adding individual classes to the graph.
-</li>
+<li>Manually adding individual classes to the graph.</li>
<li>and/or: Let GraphViz recursively scan and parse specified
-directories with Java source code files to discover class names.
-</li>
+directories with Java source code files to discover class names.</li>
<li>For every class added to the graph, GraphViz will recursively
-inspect it and add all referecned classes to the graph as well.
-</li>
-</ul>
-</li>
+inspect it and add all referecned classes to the graph as well.</li>
+</ul></li>
<li>Graphs easilly get very big and complex so optionally we filter
important code using classname wildcards patterns based blacklist
-and/or whitelist.
-</li>
+and/or whitelist.</li>
<li>Optionally we can tune some rendering parameters like:
<ul class="org-ul">
<li>Possibility to remove orphaned classes (classes with no
-references) from the graph.
-</li>
+references) from the graph.</li>
<li>Specify target directory for generated visualization
-files. (Default is user desktop directory)
-</li>
-<li>Keep intermediate GraphViz dot file for later inspection.
-</li>
-</ul>
-</li>
-<li>Render graph.
-</li>
+files. (Default is user desktop directory)</li>
+<li>Keep intermediate GraphViz dot file for later inspection.</li>
+</ul></li>
+<li>Render graph.</li>
</ol>
</div>
-<div id="outline-container-sec-3-1" class="outline-3">
-<h3 id="sec-3-1"><span class="section-number-3">3.1</span> example 1: individually picked objects</h3>
+<div id="outline-container-orgheadline3" class="outline-3">
+<h3 id="orgheadline3"><span class="section-number-3">3.1</span> example 1: individually picked objects</h3>
<div class="outline-text-3" id="text-3-1">
<p>
This example demonstrates generating of class graph from hand picked
<div class="org-src-container">
-<pre class="src src-java"><span style="color: #8C8C8C;">// </span><span style="color: #8C8C8C;">Create graph</span>
-<span style="color: #F92672;">final</span> <span style="color: #66D9EF;">ClassGraph</span> <span style="color: #FD971F;">graph</span> = <span style="color: #F92672;">new</span> <span style="color: #66D9EF;">ClassGraph</span>();
+<pre class="src src-java"><span style="color: #2aa1ae; background-color: #292e34;">// </span><span style="color: #2aa1ae; background-color: #292e34;">Create graph</span>
+<span style="color: #4f97d7; font-weight: bold;">final</span> <span style="color: #ce537a; font-weight: bold;">ClassGraph</span> <span style="color: #7590db;">graph</span> = <span style="color: #4f97d7; font-weight: bold;">new</span> <span style="color: #ce537a; font-weight: bold;">ClassGraph</span><span style="color: #4f97d7;">()</span>;
-<span style="color: #8C8C8C;">// </span><span style="color: #8C8C8C;">Add some random object to the graph. GraphViz will detect Class from</span>
-<span style="color: #8C8C8C;">// </span><span style="color: #8C8C8C;">the object.</span>
-graph.add(graph);
+<span style="color: #2aa1ae; background-color: #292e34;">// </span><span style="color: #2aa1ae; background-color: #292e34;">Add some random object to the graph. GraphViz will detect Class from</span>
+<span style="color: #2aa1ae; background-color: #292e34;">// </span><span style="color: #2aa1ae; background-color: #292e34;">the object.</span>
+graph.add<span style="color: #4f97d7;">(</span>graph<span style="color: #4f97d7;">)</span>;
-<span style="color: #8C8C8C;">// </span><span style="color: #8C8C8C;">Also add some random class to the graph.</span>
-graph.add(Utils.<span style="color: #F92672;">class</span>);
+<span style="color: #2aa1ae; background-color: #292e34;">// </span><span style="color: #2aa1ae; background-color: #292e34;">Also add some random class to the graph.</span>
+graph.add<span style="color: #4f97d7;">(</span>Utils.<span style="color: #4f97d7; font-weight: bold;">class</span><span style="color: #4f97d7;">)</span>;
-<span style="color: #8C8C8C;">// </span><span style="color: #8C8C8C;">Keep intermediary GraphViz DOT file for reference.</span>
-graph.setKeepDotFile(<span style="color: #FF80F4;">true</span>);
+<span style="color: #2aa1ae; background-color: #292e34;">// </span><span style="color: #2aa1ae; background-color: #292e34;">Keep intermediary GraphViz DOT file for reference.</span>
+graph.setKeepDotFile<span style="color: #4f97d7;">(</span><span style="color: #a45bad;">true</span><span style="color: #4f97d7;">)</span>;
-<span style="color: #8C8C8C;">// </span><span style="color: #8C8C8C;">Produce bitmap image titled "JavaInspect.png" to the user Desktop</span>
-<span style="color: #8C8C8C;">// </span><span style="color: #8C8C8C;">directory</span>
-graph.generateGraph(<span style="color: #EEDC82;">"JavaInspect"</span>);
+<span style="color: #2aa1ae; background-color: #292e34;">// </span><span style="color: #2aa1ae; background-color: #292e34;">Produce bitmap image titled "JavaInspect.png" to the user Desktop</span>
+<span style="color: #2aa1ae; background-color: #292e34;">// </span><span style="color: #2aa1ae; background-color: #292e34;">directory</span>
+graph.generateGraph<span style="color: #4f97d7;">(</span><span style="color: #2d9574;">"JavaInspect"</span><span style="color: #4f97d7;">)</span>;
</pre>
</div>
</p>
<div class="org-src-container">
-<pre class="src src-java"><span style="color: #F92672;">new</span> <span style="color: #66D9EF;">ClassGraph</span>().add(randomObject, RandomClass.<span style="color: #F92672;">class</span>)
- .setKeepDotFile(<span style="color: #FF80F4;">true</span>).generateGraph(<span style="color: #EEDC82;">"JavaInspect"</span>);
+<pre class="src src-java"><span style="color: #4f97d7; font-weight: bold;">new</span> <span style="color: #ce537a; font-weight: bold;">ClassGraph</span><span style="color: #4f97d7;">()</span>.add<span style="color: #4f97d7;">(</span>randomObject, RandomClass.<span style="color: #4f97d7; font-weight: bold;">class</span><span style="color: #4f97d7;">)</span>
+ .setKeepDotFile<span style="color: #4f97d7;">(</span><span style="color: #a45bad;">true</span><span style="color: #4f97d7;">)</span>.generateGraph<span style="color: #4f97d7;">(</span><span style="color: #2d9574;">"JavaInspect"</span><span style="color: #4f97d7;">)</span>;
</pre>
</div>
Result:
</p>
<ul class="org-ul">
-<li>Generated DOT file: <a href="JavaInspect.dot">JavaInspect.dot</a>
-</li>
-<li>Generated PNG image: <a href="JavaInspect.png">JavaInspect.png</a>
-</li>
+<li>Generated DOT file: <a href="JavaInspect.dot">JavaInspect.dot</a></li>
+<li>Generated PNG image: <a href="JavaInspect.png">JavaInspect.png</a></li>
</ul>
</div>
</div>
-<div id="outline-container-sec-3-2" class="outline-3">
-<h3 id="sec-3-2"><span class="section-number-3">3.2</span> example 2: scan java code, apply filters</h3>
+<div id="outline-container-orgheadline4" class="outline-3">
+<h3 id="orgheadline4"><span class="section-number-3">3.2</span> example 2: scan java code, apply filters</h3>
<div class="outline-text-3" id="text-3-2">
<div class="org-src-container">
-<pre class="src src-java"><span style="color: #8C8C8C;">// </span><span style="color: #8C8C8C;">Create graph</span>
-<span style="color: #F92672;">final</span> <span style="color: #66D9EF;">ClassGraph</span> <span style="color: #FD971F;">graph</span> = <span style="color: #F92672;">new</span> <span style="color: #66D9EF;">ClassGraph</span>();
+<pre class="src src-java"><span style="color: #2aa1ae; background-color: #292e34;">// </span><span style="color: #2aa1ae; background-color: #292e34;">Create graph</span>
+<span style="color: #4f97d7; font-weight: bold;">final</span> <span style="color: #ce537a; font-weight: bold;">ClassGraph</span> <span style="color: #7590db;">graph</span> = <span style="color: #4f97d7; font-weight: bold;">new</span> <span style="color: #ce537a; font-weight: bold;">ClassGraph</span><span style="color: #4f97d7;">()</span>;
-<span style="color: #8C8C8C;">// </span><span style="color: #8C8C8C;">Recursively scan current directory for Java source code and attempt</span>
-<span style="color: #8C8C8C;">// </span><span style="color: #8C8C8C;">to detect class names from there to be added to the graph.</span>
-graph.addProject(<span style="color: #EEDC82;">"."</span>);
+<span style="color: #2aa1ae; background-color: #292e34;">// </span><span style="color: #2aa1ae; background-color: #292e34;">Recursively scan current directory for Java source code and attempt</span>
+<span style="color: #2aa1ae; background-color: #292e34;">// </span><span style="color: #2aa1ae; background-color: #292e34;">to detect class names from there to be added to the graph.</span>
+graph.addProject<span style="color: #4f97d7;">(</span><span style="color: #2d9574;">"."</span><span style="color: #4f97d7;">)</span>;
-<span style="color: #8C8C8C;">// </span><span style="color: #8C8C8C;">Blacklist example classes from being shown on the graph</span>
-graph.blacklistClassPattern(<span style="color: #EEDC82;">"eu.svjatoslav.inspector.java.structure.example.*"</span>);
+<span style="color: #2aa1ae; background-color: #292e34;">// </span><span style="color: #2aa1ae; background-color: #292e34;">Blacklist example classes from being shown on the graph</span>
+graph.blacklistClassPattern<span style="color: #4f97d7;">(</span><span style="color: #2d9574;">"eu.svjatoslav.inspector.java.structure.example.*"</span><span style="color: #4f97d7;">)</span>;
-<span style="color: #8C8C8C;">// </span><span style="color: #8C8C8C;">do not show single classes with no relationships on the graph</span>
-graph.hideOrphanedClasses();
+<span style="color: #2aa1ae; background-color: #292e34;">// </span><span style="color: #2aa1ae; background-color: #292e34;">do not show single classes with no relationships on the graph</span>
+graph.hideOrphanedClasses<span style="color: #4f97d7;">()</span>;
-<span style="color: #8C8C8C;">// </span><span style="color: #8C8C8C;">Produce bitmap image titled "JavaInspect full project.png" to the</span>
-<span style="color: #8C8C8C;">// </span><span style="color: #8C8C8C;">user Desktop directory.</span>
-graph.generateGraph(<span style="color: #EEDC82;">"JavaInspect full project"</span>);
+<span style="color: #2aa1ae; background-color: #292e34;">// </span><span style="color: #2aa1ae; background-color: #292e34;">Produce bitmap image titled "JavaInspect full project.png" to the</span>
+<span style="color: #2aa1ae; background-color: #292e34;">// </span><span style="color: #2aa1ae; background-color: #292e34;">user Desktop directory.</span>
+graph.generateGraph<span style="color: #4f97d7;">(</span><span style="color: #2d9574;">"JavaInspect full project"</span><span style="color: #4f97d7;">)</span>;
</pre>
</div>
<p>
Result:
</p>
<ul class="org-ul">
-<li>Generated PNG image: <a href="JavaInspect%20full%20project.png">JavaInspect full project.png</a>
-</li>
+<li>Generated PNG image: <a href="JavaInspect%20full%20project.png">JavaInspect full project.png</a></li>
</ul>
</div>
</div>
-<div id="outline-container-sec-3-3" class="outline-3">
-<h3 id="sec-3-3"><span class="section-number-3">3.3</span> example 3: GraphViz embedded in another project</h3>
+<div id="outline-container-orgheadline5" class="outline-3">
+<h3 id="orgheadline5"><span class="section-number-3">3.3</span> example 3: GraphViz embedded in another project</h3>
<div class="outline-text-3" id="text-3-3">
<ol class="org-ol">
-<li>Download project Sixth <a href="http://www2.svjatoslav.eu/gitweb/?p=sixth.git;a=snapshot;h=HEAD;sf=tgz">code snapshot</a>.
-</li>
-<li>Inspect and run <b>DataGraph.java</b>.
-</li>
+<li>Download project Sixth <a href="http://www2.svjatoslav.eu/gitweb/?p=sixth.git;a=snapshot;h=HEAD;sf=tgz">code snapshot</a>.</li>
+<li>Inspect and run *DataGraph.java*.</li>
</ol>
</div>
</div>
</div>
-<div id="outline-container-sec-4" class="outline-2">
-<h2 id="sec-4"><span class="section-number-2">4</span> Embedding JavaInspect in your Maven project</h2>
+<div id="outline-container-orgheadline7" class="outline-2">
+<h2 id="orgheadline7"><span class="section-number-2">4</span> Embedding JavaInspect in your Maven project</h2>
<div class="outline-text-2" id="text-4">
<p>
Declare JavaInspect as dependency:
</p>
<div class="org-src-container">
-<pre class="src src-xml"><<span style="color: #A6E22E;">dependencies</span>>
+<pre class="src src-xml"><<span style="color: #bc6ec5; font-weight: bold;">dependencies</span>>
...
- <<span style="color: #A6E22E;">dependency</span>>
- <<span style="color: #A6E22E;">groupId</span>>eu.svjatoslav</<span style="color: #A6E22E;">groupId</span>>
- <<span style="color: #A6E22E;">artifactId</span>>javainspect</<span style="color: #A6E22E;">artifactId</span>>
- <<span style="color: #A6E22E;">version</span>>1.5-SNAPSHOT</<span style="color: #A6E22E;">version</span>>
- </<span style="color: #A6E22E;">dependency</span>>
+ <<span style="color: #bc6ec5; font-weight: bold;">dependency</span>>
+ <<span style="color: #bc6ec5; font-weight: bold;">groupId</span>>eu.svjatoslav</<span style="color: #bc6ec5; font-weight: bold;">groupId</span>>
+ <<span style="color: #bc6ec5; font-weight: bold;">artifactId</span>>javainspect</<span style="color: #bc6ec5; font-weight: bold;">artifactId</span>>
+ <<span style="color: #bc6ec5; font-weight: bold;">version</span>>1.5</<span style="color: #bc6ec5; font-weight: bold;">version</span>>
+ </<span style="color: #bc6ec5; font-weight: bold;">dependency</span>>
...
-</<span style="color: #A6E22E;">dependencies</span>>
+</<span style="color: #bc6ec5; font-weight: bold;">dependencies</span>>
</pre>
</div>
</p>
<div class="org-src-container">
-<pre class="src src-xml"><<span style="color: #A6E22E;">repositories</span>>
+<pre class="src src-xml"><<span style="color: #bc6ec5; font-weight: bold;">repositories</span>>
...
- <<span style="color: #A6E22E;">repository</span>>
- <<span style="color: #A6E22E;">id</span>>svjatoslav.eu</<span style="color: #A6E22E;">id</span>>
- <<span style="color: #A6E22E;">name</span>>Svjatoslav repository</<span style="color: #A6E22E;">name</span>>
- <<span style="color: #A6E22E;">url</span>>http://www2.svjatoslav.eu/maven/</<span style="color: #A6E22E;">url</span>>
- </<span style="color: #A6E22E;">repository</span>>
+ <<span style="color: #bc6ec5; font-weight: bold;">repository</span>>
+ <<span style="color: #bc6ec5; font-weight: bold;">id</span>>svjatoslav.eu</<span style="color: #bc6ec5; font-weight: bold;">id</span>>
+ <<span style="color: #bc6ec5; font-weight: bold;">name</span>>Svjatoslav repository</<span style="color: #bc6ec5; font-weight: bold;">name</span>>
+ <<span style="color: #bc6ec5; font-weight: bold;">url</span>>http://www2.svjatoslav.eu/maven/</<span style="color: #bc6ec5; font-weight: bold;">url</span>>
+ </<span style="color: #bc6ec5; font-weight: bold;">repository</span>>
...
-</<span style="color: #A6E22E;">repositories</span>>
+</<span style="color: #bc6ec5; font-weight: bold;">repositories</span>>
</pre>
</div>
</div>
</div>
-<div id="outline-container-sec-5" class="outline-2">
-<h2 id="sec-5"><span class="section-number-2">5</span> Requirements</h2>
+<div id="outline-container-orgheadline8" class="outline-2">
+<h2 id="orgheadline8"><span class="section-number-2">5</span> Requirements</h2>
<div class="outline-text-2" id="text-5">
<p>
<a href="http://www.graphviz.org/">GraphViz</a> - shall be installed on the computer.
</div>
</div>
</div>
-<div id="outline-container-sec-6" class="outline-2">
-<h2 id="sec-6"><span class="section-number-2">6</span> <span class="todo TODO">TODO</span> </h2>
+<div id="outline-container-orgheadline9" class="outline-2">
+<h2 id="orgheadline9"><span class="section-number-2">6</span> TO DO</h2>
<div class="outline-text-2" id="text-6">
<ul class="org-ul">
-<li>BUG: Should not hide references if there are too many of them to
-classes if referring classes are not visible anyway because of
-blacklist/whitelist rules. Basically reference counting should
-exclude not visible classes.
-</li>
-<li>FEATURE: add dark theme
-</li>
-<li>FEATURE: sort Class fields by alphabet
-</li>
+<li>BUG: Should not hide references if there are too many of them to classes if
+referring classes are not visible anyway because of blacklist/whitelist rules.
+Basically reference counting should exclude not visible classes.</li>
+<li>FEATURE: add dark theme</li>
+<li>FEATURE: sort Class fields by alphabet</li>
<li>FEATURE: visualize also concrete field values so it could be used as
-ultra cool runtime logging framework
-</li>
+ultra cool runtime logging framework</li>
<li>FEATURE: possibility to visualize structure and data from JVM
-snapshot
-</li>
+snapshot</li>
<li>FEATURE: possibility to attach to remote process to visualize
-data/structure using JVM debug port and mechanism.
-</li>
-<li>FEATURE: possibility to attach to JVM using JVM agent
-</li>
-<li>FEATURE: possibility to script javainspect behavior
-</li>
+data/structure using JVM debug port and mechanism.</li>
+<li>FEATURE: possibility to attach to JVM using JVM agent</li>
+<li>FEATURE: possibility to script javainspect behavior</li>
<li>FEATURE: possibility to select classes/fields/values to be
-visualized in SQL like syntax
-</li>
+visualized in SQL like syntax</li>
<li>FEATURE: configurable maven plugin to generate graphs as part of the
-project build/release process
-</li>
+project build/release process</li>
</ul>
</div>
</div>
</div>
<div id="postamble" class="status">
<p class="author">Author: Svjatoslav Agejenko</p>
-<p class="date">Created: 2015-03-07 Sat 00:10</p>
-<p class="creator"><a href="http://www.gnu.org/software/emacs/">Emacs</a> 24.4.1 (<a href="http://orgmode.org">Org</a> mode 8.2.10)</p>
+<p class="date">Created: 2016-11-09 Wed 12:09</p>
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
</div>
</body>