mirror of https://github.com/dspinellis/UMLGraph
94 lines
2.1 KiB
XML
94 lines
2.1 KiB
XML
<?xml version="1.0" ?>
|
|
<!-- $Id$ -->
|
|
<notes>
|
|
The makefile-based multiple view example can be generated by using internal
|
|
view support by means of the following sources (note the use of UmlOptions
|
|
to set the common appearance options, and the views to generate multiple
|
|
diagrams at different detail level).
|
|
|
|
<fmtcode ext="java">
|
|
// Author: Vadim Nasardinov
|
|
// Author: Andrea Aime
|
|
// Version: $Id$
|
|
|
|
import java.util.List;
|
|
import java.util.Map;
|
|
|
|
/**
|
|
* @assoc "1..1" - "0..n" Adapter
|
|
* @assoc "" - "0..n" ObjectType
|
|
* @assoc "" - "0..n" ObjectMap
|
|
* @assoc "" - "0..n" Table
|
|
* @assoc "" - "0..n" DataOperation
|
|
**/
|
|
class Root {
|
|
private Map m_adapters;
|
|
private List m_types;
|
|
private List m_maps;
|
|
private List m_tables;
|
|
private List m_ops;
|
|
|
|
public Adapter getAdapter(Class klass) {}
|
|
}
|
|
|
|
class Adapter {
|
|
public Root getRoot();
|
|
}
|
|
|
|
abstract class Element {
|
|
Root getRoot() {}
|
|
}
|
|
|
|
class ObjectType extends Element {}
|
|
|
|
/**
|
|
* @has "1..1" - "1..1" ObjectType
|
|
**/
|
|
class ObjectMap extends Element {
|
|
private ObjectType m_type;
|
|
}
|
|
|
|
class Table extends Element {}
|
|
|
|
class DataOperation extends Element {}
|
|
|
|
/**
|
|
* @hidden
|
|
* @opt nodefontname luxisr
|
|
* @opt nodefontabstractname luxisri
|
|
* @opt edgefontname luxisr
|
|
* @opt nodefontsize 8
|
|
* @opt edgefontsize 8
|
|
* @opt nodefillcolor LemonChiffon
|
|
*/
|
|
class UMLOptions {}
|
|
|
|
/**
|
|
* @view
|
|
* @opt attributes
|
|
* @opt operations
|
|
*/
|
|
class DetailedView {}
|
|
|
|
/**
|
|
* @view
|
|
*/
|
|
class Overview {}
|
|
</fmtcode>
|
|
|
|
and by invoking the following commands (assuming UmlGraph.jar is in the
|
|
current directory):
|
|
|
|
<fmtcode ext="bat">
|
|
javadoc -doclet org.umlgraph.doclet.UmlGraph -private -docletpath UmlGraph.jar -views RootViews.java
|
|
dot -Tpng -o root-small.png Overview.dot
|
|
dot -Tpng -o root.png DetailedView.dot
|
|
</fmtcode>
|
|
|
|
The javadoc invocation asks UMLGraph to build a diagram for every view (-views)
|
|
contained in the RootViews.java file. Notably, there's no class RootViews
|
|
in the source file: this is not needed to make javadoc work on a single
|
|
class. Respecting the java rules for file and class naming is anyway advised
|
|
in any real situation.
|
|
</notes>
|