diff --git a/src/main/java/org/umlgraph/doclet/ClassGraph.java b/src/main/java/org/umlgraph/doclet/ClassGraph.java index 90e549c..1bc6d0e 100644 --- a/src/main/java/org/umlgraph/doclet/ClassGraph.java +++ b/src/main/java/org/umlgraph/doclet/ClassGraph.java @@ -343,9 +343,8 @@ class ClassGraph { className = removeTemplate(className); ClassInfo ci = classnames.get(className); if (ci == null && create) { - Options o = optionProvider.getOptionsFor(className); - boolean hidden = cd != null ? hidden(cd) : o.matchesHideExpression(className); - ci = new ClassInfo(hidden, o.shape.landingPort()); + boolean hidden = cd != null ? hidden(cd) : optionProvider.getOptionsFor(className).matchesHideExpression(className); + ci = new ClassInfo(hidden); classnames.put(className, ci); } return ci; @@ -478,7 +477,7 @@ class ClassGraph { externalTableEnd(); nodeProperties(UmlGraph.getCommentOptions()); ClassInfo ci1 = getClassInfo(c, true); - w.print(linePrefix + noteName + " -> " + ci1.name + ci1.port + "[arrowhead=none];\n"); + w.print(linePrefix + noteName + " -> " + ci1.name + "[arrowhead=none];\n"); ni++; } ci.nodePrinted = true; @@ -528,13 +527,12 @@ class ClassGraph { boolean unLabeled = tailLabel.isEmpty() && label.isEmpty() && headLabel.isEmpty(); ClassInfo ci1 = getClassInfo(from, fromName, true), ci2 = getClassInfo(to, toName, true); - String n1 = ci1.name + ci1.port, n2 = ci2.name + ci2.port; + String n1 = ci1.name, n2 = ci2.name; // For ranking we need to output extends/implements backwards. if (rt.backorder) { // Swap: - String tmp = n1; - n1 = n2; - n2 = tmp; - tmp = tailLabel; + n1 = ci2.name; + n2 = ci1.name; + String tmp = tailLabel; tailLabel = headLabel; headLabel = tmp; } @@ -886,7 +884,7 @@ class ClassGraph { linePrefix + "node [fontname=\"" + opt.nodeFontName + "\",fontcolor=\"" + opt.nodeFontColor + "\",fontsize=" + fmt(opt.nodeFontSize) + - ",shape=plaintext];" + ",shape=plaintext,margin=0,width=0,height=0];" ); w.println(linePrefix + "nodesep=" + opt.nodeSep + ";"); @@ -909,7 +907,7 @@ class ClassGraph { String href = url == null ? "" : (" href=\"" + url + "\" target=\"_parent\""); w.print("<" + linePostfix); + "cellpadding=\"2\"" + bgcolor + href + ">" + linePostfix); } private void externalTableEnd() { @@ -943,7 +941,8 @@ class ClassGraph { } private void tableLine(Align align, String text) { - w.print("" + linePostfix); } diff --git a/src/main/java/org/umlgraph/doclet/ClassInfo.java b/src/main/java/org/umlgraph/doclet/ClassInfo.java index c979f26..f498210 100644 --- a/src/main/java/org/umlgraph/doclet/ClassInfo.java +++ b/src/main/java/org/umlgraph/doclet/ClassInfo.java @@ -31,7 +31,7 @@ import java.util.Map; class ClassInfo { private static int classNumber; /** Alias name for the class */ - final String name, port; + final String name; /** True if the class class node has been printed */ boolean nodePrinted; /** True if the class class node is hidden */ @@ -43,10 +43,9 @@ class ClassInfo { */ Map relatedClasses = new HashMap(); - ClassInfo(boolean h, String port) { + ClassInfo(boolean h) { hidden = h; name = "c" + classNumber; - this.port = port; classNumber++; } diff --git a/src/main/java/org/umlgraph/doclet/Shape.java b/src/main/java/org/umlgraph/doclet/Shape.java index a3c0484..54a8cdd 100644 --- a/src/main/java/org/umlgraph/doclet/Shape.java +++ b/src/main/java/org/umlgraph/doclet/Shape.java @@ -71,11 +71,6 @@ public enum Shape { this.style = style; } - /** Return the shape's GraphViz landing port */ - public String landingPort() { - return this == CLASS || this == ACTIVECLASS ? ":p" : ""; - } - /** Return the table border required for the shape */ public String extraColumn() { return this == Shape.ACTIVECLASS ? ("") : ""; diff --git a/testdata/dot-ref/Abstr.dot b/testdata/dot-ref/Abstr.dot index df3ff36..1528241 100644 --- a/testdata/dot-ref/Abstr.dot +++ b/testdata/dot-ref/Abstr.dot @@ -7,20 +7,20 @@ digraph G { graph [fontnames="svg"] edge [fontname="Helvetica",fontsize=10,labelfontname="Helvetica",labelfontsize=10,color="black"]; -node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext]; +node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext,margin=0,width=0,height=0]; nodesep=0.25; ranksep=0.5; // test.AbstractNode -c1 [label=<
" // + w.print(linePrefix + linePrefix // + + "
" // + text // MAY contain markup! + "
AbstractNode
abstractMethod()
concreteMethod()
>]; +c1 [label=<
AbstractNode
abstractMethod()
concreteMethod()
>]; // test.InnerNode -c2 [label=<
InnerNode
>]; +c2 [label=<
InnerNode
>]; // test.Leaf -c3 [label=<
Leaf
>]; +c3 [label=<
Leaf
>]; // test.InnerNode extends test.AbstractNode -c1:p -> c2:p [arrowtail=empty,dir=back,weight=10]; +c1 -> c2 [arrowtail=empty,dir=back,weight=10]; // test.InnerNode composed test.AbstractNode -c2:p -> c1:p [arrowhead=none,arrowtail=diamond,dir=back,weight=6,taillabel="1", label="has", headlabel="*"]; +c2 -> c1 [arrowhead=none,arrowtail=diamond,dir=back,weight=6,taillabel="1", label="has", headlabel="*"]; // test.Leaf extends test.AbstractNode -c1:p -> c3:p [arrowtail=empty,dir=back,weight=10]; +c1 -> c3 [arrowtail=empty,dir=back,weight=10]; } diff --git a/testdata/dot-ref/Inference.dot b/testdata/dot-ref/Inference.dot index 5f09564..64737cf 100644 --- a/testdata/dot-ref/Inference.dot +++ b/testdata/dot-ref/Inference.dot @@ -7,44 +7,44 @@ digraph G { graph [fontnames="svg"] edge [fontname="Helvetica",fontsize=10,labelfontname="Helvetica",labelfontsize=10,color="black"]; -node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext]; +node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext,margin=0,width=0,height=0]; nodesep=0.25; ranksep=0.5; // A -c66 [label=<
A
first : B
second : B
third : C
>]; +c66 [label=<
A
first : B
second : B
third : C
>]; // B -c67 [label=<
B
doSomething(b : B, c : C) : A
>]; +c67 [label=<
B
doSomething(b : B, c : C) : A
>]; // C -c68 [label=<
C
collectionOfA : List<A>
collectionOfB : ArrayList<B>
mapOfD : Map<String, D>
childs : C[]
anOpaqueList : List<>
>]; +c68 [label=<
C
collectionOfA : List<A>
collectionOfB : ArrayList<B>
mapOfD : Map<String, D>
childs : C[]
anOpaqueList : List<>
>]; // MyFunnyList -c69 [label=<
MyFunnyList<T, V>
myField : V
>]; +c69 [label=<
MyFunnyList<T, V>
myField : V
>]; // MyList -c70 [label=<
MyList
>]; +c70 [label=<
MyList
>]; // D -c71 [label=<
D
anotherListOfA : MyList
>]; +c71 [label=<
D
anotherListOfA : MyList
>]; // MyFunnyList extends java.util.ArrayList -c72:p -> c69:p [arrowtail=empty,dir=back,weight=10]; +c72 -> c69 [arrowtail=empty,dir=back,weight=10]; // MyList extends MyFunnyList -c69:p -> c70:p [arrowtail=empty,dir=back,weight=10]; +c69 -> c70 [arrowtail=empty,dir=back,weight=10]; // A has B -c66:p -> c67:p [arrowhead=none,arrowtail=ediamond,dir=back,weight=4]; +c66 -> c67 [arrowhead=none,arrowtail=ediamond,dir=back,weight=4]; // A has C -c66:p -> c68:p [arrowhead=none,arrowtail=ediamond,dir=back,weight=4]; +c66 -> c68 [arrowhead=none,arrowtail=ediamond,dir=back,weight=4]; // C navassoc B -c68:p -> c67:p [arrowhead=open,weight=1,headlabel="*"]; +c68 -> c67 [arrowhead=open,weight=1,headlabel="*"]; // C navassoc D -c68:p -> c71:p [arrowhead=open,weight=1,headlabel="*"]; +c68 -> c71 [arrowhead=open,weight=1,headlabel="*"]; // C navassoc C -c68:p -> c68:p [arrowhead=open,weight=1,headlabel="*"]; +c68 -> c68 [arrowhead=open,weight=1,headlabel="*"]; // C navassoc java.util.List -c68:p -> c73:p [arrowhead=open,weight=1]; +c68 -> c73 [arrowhead=open,weight=1]; // D navassoc MyList -c71:p -> c70:p [arrowhead=open,weight=1]; +c71 -> c70 [arrowhead=open,weight=1]; // B depend A -c67:p -> c66:p [arrowhead=open,style=dashed,weight=0]; +c67 -> c66 [arrowhead=open,style=dashed,weight=0]; // java.util.List -c73 [label=<
«interface»
List<E>
size() : int
isEmpty() : boolean
contains(arg0 : Object) : boolean
iterator() : Iterator<E>
toArray() : Object[]
toArray(arg0 : T[]) : T[]
add(arg0 : E) : boolean
remove(arg0 : Object) : boolean
containsAll(arg0 : Collection<?>) : boolean
addAll(arg0 : Collection<?>) : boolean
addAll(arg0 : int, arg1 : Collection<?>) : boolean
removeAll(arg0 : Collection<?>) : boolean
retainAll(arg0 : Collection<?>) : boolean
replaceAll(arg0 : UnaryOperator<E>)
sort(arg0 : Comparator<?>)
clear()
equals(arg0 : Object) : boolean
hashCode() : int
get(arg0 : int) : E
set(arg0 : int, arg1 : E) : E
add(arg0 : int, arg1 : E)
remove(arg0 : int) : E
indexOf(arg0 : Object) : int
lastIndexOf(arg0 : Object) : int
listIterator() : ListIterator<E>
listIterator(arg0 : int) : ListIterator<E>
subList(arg0 : int, arg1 : int) : List<E>
spliterator() : Spliterator<E>
>, URL="http://docs.oracle.com/javase/7/docs/api/java/util/List.html"]; +c73 [label=<
«interface»
List<E>
size() : int
isEmpty() : boolean
contains(arg0 : Object) : boolean
iterator() : Iterator<E>
toArray() : Object[]
toArray(arg0 : T[]) : T[]
add(arg0 : E) : boolean
remove(arg0 : Object) : boolean
containsAll(arg0 : Collection<?>) : boolean
addAll(arg0 : Collection<?>) : boolean
addAll(arg0 : int, arg1 : Collection<?>) : boolean
removeAll(arg0 : Collection<?>) : boolean
retainAll(arg0 : Collection<?>) : boolean
replaceAll(arg0 : UnaryOperator<E>)
sort(arg0 : Comparator<?>)
clear()
equals(arg0 : Object) : boolean
hashCode() : int
get(arg0 : int) : E
set(arg0 : int, arg1 : E) : E
add(arg0 : int, arg1 : E)
remove(arg0 : int) : E
indexOf(arg0 : Object) : int
lastIndexOf(arg0 : Object) : int
listIterator() : ListIterator<E>
listIterator(arg0 : int) : ListIterator<E>
subList(arg0 : int, arg1 : int) : List<E>
spliterator() : Spliterator<E>
>, URL="http://docs.oracle.com/javase/7/docs/api/java/util/List.html"]; // java.util.ArrayList -c72 [label=<
ArrayList<E>
serialVersionUID : long
DEFAULT_CAPACITY : int
EMPTY_ELEMENTDATA : Object[]
DEFAULTCAPACITY_EMPTY_ELEMENTDATA : Object[]
elementData : Object[]
size : int
MAX_ARRAY_SIZE : int
trimToSize()
ensureCapacity(arg0 : int)
ensureCapacityInternal(arg0 : int)
ensureExplicitCapacity(arg0 : int)
grow(arg0 : int)
hugeCapacity(arg0 : int) : int
size() : int
isEmpty() : boolean
contains(arg0 : Object) : boolean
indexOf(arg0 : Object) : int
lastIndexOf(arg0 : Object) : int
clone() : Object
toArray() : Object[]
toArray(arg0 : T[]) : T[]
elementData(arg0 : int) : E
get(arg0 : int) : E
set(arg0 : int, arg1 : E) : E
add(arg0 : E) : boolean
add(arg0 : int, arg1 : E)
remove(arg0 : int) : E
remove(arg0 : Object) : boolean
fastRemove(arg0 : int)
clear()
addAll(arg0 : Collection<?>) : boolean
addAll(arg0 : int, arg1 : Collection<?>) : boolean
removeRange(arg0 : int, arg1 : int)
rangeCheck(arg0 : int)
rangeCheckForAdd(arg0 : int)
outOfBoundsMsg(arg0 : int) : String
removeAll(arg0 : Collection<?>) : boolean
retainAll(arg0 : Collection<?>) : boolean
batchRemove(arg0 : Collection<?>, arg1 : boolean) : boolean
writeObject(arg0 : ObjectOutputStream)
readObject(arg0 : ObjectInputStream)
listIterator(arg0 : int) : ListIterator<E>
listIterator() : ListIterator<E>
iterator() : Iterator<E>
subList(arg0 : int, arg1 : int) : List<E>
subListRangeCheck(arg0 : int, arg1 : int, arg2 : int)
forEach(arg0 : Consumer<?>)
spliterator() : Spliterator<E>
removeIf(arg0 : Predicate<?>) : boolean
replaceAll(arg0 : UnaryOperator<E>)
sort(arg0 : Comparator<?>)
>, URL="http://docs.oracle.com/javase/7/docs/api/java/util/ArrayList.html"]; +c72 [label=<
ArrayList<E>
serialVersionUID : long
DEFAULT_CAPACITY : int
EMPTY_ELEMENTDATA : Object[]
DEFAULTCAPACITY_EMPTY_ELEMENTDATA : Object[]
elementData : Object[]
size : int
MAX_ARRAY_SIZE : int
trimToSize()
ensureCapacity(arg0 : int)
ensureCapacityInternal(arg0 : int)
ensureExplicitCapacity(arg0 : int)
grow(arg0 : int)
hugeCapacity(arg0 : int) : int
size() : int
isEmpty() : boolean
contains(arg0 : Object) : boolean
indexOf(arg0 : Object) : int
lastIndexOf(arg0 : Object) : int
clone() : Object
toArray() : Object[]
toArray(arg0 : T[]) : T[]
elementData(arg0 : int) : E
get(arg0 : int) : E
set(arg0 : int, arg1 : E) : E
add(arg0 : E) : boolean
add(arg0 : int, arg1 : E)
remove(arg0 : int) : E
remove(arg0 : Object) : boolean
fastRemove(arg0 : int)
clear()
addAll(arg0 : Collection<?>) : boolean
addAll(arg0 : int, arg1 : Collection<?>) : boolean
removeRange(arg0 : int, arg1 : int)
rangeCheck(arg0 : int)
rangeCheckForAdd(arg0 : int)
outOfBoundsMsg(arg0 : int) : String
removeAll(arg0 : Collection<?>) : boolean
retainAll(arg0 : Collection<?>) : boolean
batchRemove(arg0 : Collection<?>, arg1 : boolean) : boolean
writeObject(arg0 : ObjectOutputStream)
readObject(arg0 : ObjectInputStream)
listIterator(arg0 : int) : ListIterator<E>
listIterator() : ListIterator<E>
iterator() : Iterator<E>
subList(arg0 : int, arg1 : int) : List<E>
subListRangeCheck(arg0 : int, arg1 : int, arg2 : int)
forEach(arg0 : Consumer<?>)
spliterator() : Spliterator<E>
removeIf(arg0 : Predicate<?>) : boolean
replaceAll(arg0 : UnaryOperator<E>)
sort(arg0 : Comparator<?>)
>, URL="http://docs.oracle.com/javase/7/docs/api/java/util/ArrayList.html"]; } diff --git a/testdata/dot-ref/Irp.dot b/testdata/dot-ref/Irp.dot index 4fb7d52..58bd3d1 100644 --- a/testdata/dot-ref/Irp.dot +++ b/testdata/dot-ref/Irp.dot @@ -7,18 +7,18 @@ digraph G { graph [fontnames="svg"] edge [fontname="Helvetica",fontsize=10,labelfontname="Helvetica",labelfontsize=10,color="black"]; -node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext]; +node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext,margin=0,width=0,height=0]; nodesep=0.25; ranksep=0.5; // Application -c74 [label=<
Application
>]; +c74 [label=<
Application
>]; // IrpApplication -c75 [label=<
IrpApplication
>]; +c75 [label=<
IrpApplication
>]; // Main -c76 [label=<
Main
>]; +c76 [label=<
Main
>]; // IrpApplication extends Application -c74:p -> c75:p [arrowtail=empty,dir=back,weight=10]; +c74 -> c75 [arrowtail=empty,dir=back,weight=10]; // Main depend IrpApplication -c76:p -> c75:p [arrowhead=open,style=dashed,weight=0,label="«friend»"]; +c76 -> c75 [arrowhead=open,style=dashed,weight=0,label="«friend»"]; } diff --git a/testdata/dot-ref/MultiAssoc.dot b/testdata/dot-ref/MultiAssoc.dot index 230d5e8..a2841c0 100644 --- a/testdata/dot-ref/MultiAssoc.dot +++ b/testdata/dot-ref/MultiAssoc.dot @@ -7,14 +7,14 @@ digraph G { graph [fontnames="svg"] edge [fontname="Helvetica",fontsize=10,labelfontname="Helvetica",labelfontsize=10,color="black"]; -node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext]; +node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext,margin=0,width=0,height=0]; nodesep=0.25; ranksep=0.5; // A -c81 [label=<
A
>]; +c81 [label=<
A
>]; // C -c83 [label=<
C
>]; +c83 [label=<
C
>]; // A depend C -c81:p -> c83:p [arrowhead=open,style=dashed,weight=0]; +c81 -> c83 [arrowhead=open,style=dashed,weight=0]; } diff --git a/testdata/dot-ref/MyVector.dot b/testdata/dot-ref/MyVector.dot index e101790..47aaf55 100644 --- a/testdata/dot-ref/MyVector.dot +++ b/testdata/dot-ref/MyVector.dot @@ -7,26 +7,26 @@ digraph G { graph [fontnames="svg"] edge [fontname="Helvetica",fontsize=10,labelfontname="Helvetica",labelfontsize=10,color="black"]; -node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext]; +node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext,margin=0,width=0,height=0]; nodesep=0.25; ranksep=0.5; // MyVector -c85 [label=<
MyVector<E, P>
~ addAll(index : int, c : Collection<E>) : boolean
~ foo(x : MyVector<P, MyVector<E, E>>) : MyVector<E, P>
~ removeAll(c : Collection<?>) : boolean
~ set(index : int, element : E) : E
>]; +c85 [label=<
MyVector<E, P>
~ addAll(index : int, c : Collection<E>) : boolean
~ foo(x : MyVector<P, MyVector<E, E>>) : MyVector<E, P>
~ removeAll(c : Collection<?>) : boolean
~ set(index : int, element : E) : E
>]; // MyVector extends java.util.Vector -c86:p -> c85:p [arrowtail=empty,dir=back,weight=10]; +c86 -> c85 [arrowtail=empty,dir=back,weight=10]; // MyVector implements java.util.List -c87:p -> c85:p [arrowtail=empty,style=dashed,dir=back,weight=9]; +c87 -> c85 [arrowtail=empty,style=dashed,dir=back,weight=9]; // MyVector implements java.util.RandomAccess -c88:p -> c85:p [arrowtail=empty,style=dashed,dir=back,weight=9]; +c88 -> c85 [arrowtail=empty,style=dashed,dir=back,weight=9]; // MyVector implements java.lang.Cloneable -c89:p -> c85:p [arrowtail=empty,style=dashed,dir=back,weight=9]; +c89 -> c85 [arrowtail=empty,style=dashed,dir=back,weight=9]; // java.util.RandomAccess -c88 [label=<
«interface»
RandomAccess
>, URL="http://docs.oracle.com/javase/7/docs/api/java/util/RandomAccess.html"]; +c88 [label=<
«interface»
RandomAccess
>, URL="http://docs.oracle.com/javase/7/docs/api/java/util/RandomAccess.html"]; // java.util.List -c87 [label=<
«interface»
List<E>
+ size() : int
+ isEmpty() : boolean
+ contains(arg0 : Object) : boolean
+ iterator() : Iterator<E>
+ toArray() : Object[]
+ toArray(arg0 : T[]) : T[]
+ add(arg0 : E) : boolean
+ remove(arg0 : Object) : boolean
+ containsAll(arg0 : Collection<?>) : boolean
+ addAll(arg0 : Collection<?>) : boolean
+ addAll(arg0 : int, arg1 : Collection<?>) : boolean
+ removeAll(arg0 : Collection<?>) : boolean
+ retainAll(arg0 : Collection<?>) : boolean
+ replaceAll(arg0 : UnaryOperator<E>)
+ sort(arg0 : Comparator<?>)
+ clear()
+ equals(arg0 : Object) : boolean
+ hashCode() : int
+ get(arg0 : int) : E
+ set(arg0 : int, arg1 : E) : E
+ add(arg0 : int, arg1 : E)
+ remove(arg0 : int) : E
+ indexOf(arg0 : Object) : int
+ lastIndexOf(arg0 : Object) : int
+ listIterator() : ListIterator<E>
+ listIterator(arg0 : int) : ListIterator<E>
+ subList(arg0 : int, arg1 : int) : List<E>
+ spliterator() : Spliterator<E>
>, URL="http://docs.oracle.com/javase/7/docs/api/java/util/List.html"]; +c87 [label=<
«interface»
List<E>
+ size() : int
+ isEmpty() : boolean
+ contains(arg0 : Object) : boolean
+ iterator() : Iterator<E>
+ toArray() : Object[]
+ toArray(arg0 : T[]) : T[]
+ add(arg0 : E) : boolean
+ remove(arg0 : Object) : boolean
+ containsAll(arg0 : Collection<?>) : boolean
+ addAll(arg0 : Collection<?>) : boolean
+ addAll(arg0 : int, arg1 : Collection<?>) : boolean
+ removeAll(arg0 : Collection<?>) : boolean
+ retainAll(arg0 : Collection<?>) : boolean
+ replaceAll(arg0 : UnaryOperator<E>)
+ sort(arg0 : Comparator<?>)
+ clear()
+ equals(arg0 : Object) : boolean
+ hashCode() : int
+ get(arg0 : int) : E
+ set(arg0 : int, arg1 : E) : E
+ add(arg0 : int, arg1 : E)
+ remove(arg0 : int) : E
+ indexOf(arg0 : Object) : int
+ lastIndexOf(arg0 : Object) : int
+ listIterator() : ListIterator<E>
+ listIterator(arg0 : int) : ListIterator<E>
+ subList(arg0 : int, arg1 : int) : List<E>
+ spliterator() : Spliterator<E>
>, URL="http://docs.oracle.com/javase/7/docs/api/java/util/List.html"]; // java.lang.Cloneable -c89 [label=<
«interface»
Cloneable
>, URL="http://docs.oracle.com/javase/7/docs/api/java/lang/Cloneable.html"]; +c89 [label=<
«interface»
Cloneable
>, URL="http://docs.oracle.com/javase/7/docs/api/java/lang/Cloneable.html"]; // java.util.Vector -c86 [label=<
Vector<E>
# elementData : Object[]
# elementCount : int
# capacityIncrement : int
- serialVersionUID : long
- MAX_ARRAY_SIZE : int
+ copyInto(arg0 : Object[])
+ trimToSize()
+ ensureCapacity(arg0 : int)
- ensureCapacityHelper(arg0 : int)
- grow(arg0 : int)
- hugeCapacity(arg0 : int) : int
+ setSize(arg0 : int)
+ capacity() : int
+ size() : int
+ isEmpty() : boolean
+ elements() : Enumeration<E>
+ contains(arg0 : Object) : boolean
+ indexOf(arg0 : Object) : int
+ indexOf(arg0 : Object, arg1 : int) : int
+ lastIndexOf(arg0 : Object) : int
+ lastIndexOf(arg0 : Object, arg1 : int) : int
+ elementAt(arg0 : int) : E
+ firstElement() : E
+ lastElement() : E
+ setElementAt(arg0 : E, arg1 : int)
+ removeElementAt(arg0 : int)
+ insertElementAt(arg0 : E, arg1 : int)
+ addElement(arg0 : E)
+ removeElement(arg0 : Object) : boolean
+ removeAllElements()
+ clone() : Object
+ toArray() : Object[]
+ toArray(arg0 : T[]) : T[]
~ elementData(arg0 : int) : E
+ get(arg0 : int) : E
+ set(arg0 : int, arg1 : E) : E
+ add(arg0 : E) : boolean
+ remove(arg0 : Object) : boolean
+ add(arg0 : int, arg1 : E)
+ remove(arg0 : int) : E
+ clear()
+ containsAll(arg0 : Collection<?>) : boolean
+ addAll(arg0 : Collection<?>) : boolean
+ removeAll(arg0 : Collection<?>) : boolean
+ retainAll(arg0 : Collection<?>) : boolean
+ addAll(arg0 : int, arg1 : Collection<?>) : boolean
+ equals(arg0 : Object) : boolean
+ hashCode() : int
+ toString() : String
+ subList(arg0 : int, arg1 : int) : List<E>
# removeRange(arg0 : int, arg1 : int)
- writeObject(arg0 : ObjectOutputStream)
+ listIterator(arg0 : int) : ListIterator<E>
+ listIterator() : ListIterator<E>
+ iterator() : Iterator<E>
+ forEach(arg0 : Consumer<?>)
+ removeIf(arg0 : Predicate<?>) : boolean
+ replaceAll(arg0 : UnaryOperator<E>)
+ sort(arg0 : Comparator<?>)
+ spliterator() : Spliterator<E>
>, URL="http://docs.oracle.com/javase/7/docs/api/java/util/Vector.html"]; +c86 [label=<
Vector<E>
# elementData : Object[]
# elementCount : int
# capacityIncrement : int
- serialVersionUID : long
- MAX_ARRAY_SIZE : int
+ copyInto(arg0 : Object[])
+ trimToSize()
+ ensureCapacity(arg0 : int)
- ensureCapacityHelper(arg0 : int)
- grow(arg0 : int)
- hugeCapacity(arg0 : int) : int
+ setSize(arg0 : int)
+ capacity() : int
+ size() : int
+ isEmpty() : boolean
+ elements() : Enumeration<E>
+ contains(arg0 : Object) : boolean
+ indexOf(arg0 : Object) : int
+ indexOf(arg0 : Object, arg1 : int) : int
+ lastIndexOf(arg0 : Object) : int
+ lastIndexOf(arg0 : Object, arg1 : int) : int
+ elementAt(arg0 : int) : E
+ firstElement() : E
+ lastElement() : E
+ setElementAt(arg0 : E, arg1 : int)
+ removeElementAt(arg0 : int)
+ insertElementAt(arg0 : E, arg1 : int)
+ addElement(arg0 : E)
+ removeElement(arg0 : Object) : boolean
+ removeAllElements()
+ clone() : Object
+ toArray() : Object[]
+ toArray(arg0 : T[]) : T[]
~ elementData(arg0 : int) : E
+ get(arg0 : int) : E
+ set(arg0 : int, arg1 : E) : E
+ add(arg0 : E) : boolean
+ remove(arg0 : Object) : boolean
+ add(arg0 : int, arg1 : E)
+ remove(arg0 : int) : E
+ clear()
+ containsAll(arg0 : Collection<?>) : boolean
+ addAll(arg0 : Collection<?>) : boolean
+ removeAll(arg0 : Collection<?>) : boolean
+ retainAll(arg0 : Collection<?>) : boolean
+ addAll(arg0 : int, arg1 : Collection<?>) : boolean
+ equals(arg0 : Object) : boolean
+ hashCode() : int
+ toString() : String
+ subList(arg0 : int, arg1 : int) : List<E>
# removeRange(arg0 : int, arg1 : int)
- writeObject(arg0 : ObjectOutputStream)
+ listIterator(arg0 : int) : ListIterator<E>
+ listIterator() : ListIterator<E>
+ iterator() : Iterator<E>
+ forEach(arg0 : Consumer<?>)
+ removeIf(arg0 : Predicate<?>) : boolean
+ replaceAll(arg0 : UnaryOperator<E>)
+ sort(arg0 : Comparator<?>)
+ spliterator() : Spliterator<E>
>, URL="http://docs.oracle.com/javase/7/docs/api/java/util/Vector.html"]; } diff --git a/testdata/dot-ref/Root.dot b/testdata/dot-ref/Root.dot index 3cc75b7..8379501 100644 --- a/testdata/dot-ref/Root.dot +++ b/testdata/dot-ref/Root.dot @@ -7,42 +7,42 @@ digraph G { graph [fontnames="svg"] edge [fontname="Helvetica",fontsize=10,labelfontname="Helvetica",labelfontsize=10,color="black"]; -node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext]; +node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext,margin=0,width=0,height=0]; nodesep=0.25; ranksep=0.5; // Root -c90 [label=<
Root
>]; +c90 [label=<
Root
>]; // Adapter -c91 [label=<
Adapter
>]; +c91 [label=<
Adapter
>]; // Element -c92 [label=<
Element
>]; +c92 [label=<
Element
>]; // ObjectType -c93 [label=<
ObjectType
>]; +c93 [label=<
ObjectType
>]; // ObjectMap -c94 [label=<
ObjectMap
>]; +c94 [label=<
ObjectMap
>]; // Table -c95 [label=<
Table
>]; +c95 [label=<
Table
>]; // DataOperation -c96 [label=<
DataOperation
>]; +c96 [label=<
DataOperation
>]; // Root assoc Adapter -c90:p -> c91:p [arrowhead=none,weight=2,taillabel="1..1", headlabel="0..n"]; +c90 -> c91 [arrowhead=none,weight=2,taillabel="1..1", headlabel="0..n"]; // Root assoc ObjectType -c90:p -> c93:p [arrowhead=none,weight=2,headlabel="0..n"]; +c90 -> c93 [arrowhead=none,weight=2,headlabel="0..n"]; // Root assoc ObjectMap -c90:p -> c94:p [arrowhead=none,weight=2,headlabel="0..n"]; +c90 -> c94 [arrowhead=none,weight=2,headlabel="0..n"]; // Root assoc Table -c90:p -> c95:p [arrowhead=none,weight=2,headlabel="0..n"]; +c90 -> c95 [arrowhead=none,weight=2,headlabel="0..n"]; // Root assoc DataOperation -c90:p -> c96:p [arrowhead=none,weight=2,headlabel="0..n"]; +c90 -> c96 [arrowhead=none,weight=2,headlabel="0..n"]; // ObjectType extends Element -c92:p -> c93:p [arrowtail=empty,dir=back,weight=10]; +c92 -> c93 [arrowtail=empty,dir=back,weight=10]; // ObjectMap extends Element -c92:p -> c94:p [arrowtail=empty,dir=back,weight=10]; +c92 -> c94 [arrowtail=empty,dir=back,weight=10]; // ObjectMap has ObjectType -c94:p -> c93:p [arrowhead=none,arrowtail=ediamond,dir=back,weight=4,taillabel="1..1", headlabel="1..1"]; +c94 -> c93 [arrowhead=none,arrowtail=ediamond,dir=back,weight=4,taillabel="1..1", headlabel="1..1"]; // Table extends Element -c92:p -> c95:p [arrowtail=empty,dir=back,weight=10]; +c92 -> c95 [arrowtail=empty,dir=back,weight=10]; // DataOperation extends Element -c92:p -> c96:p [arrowtail=empty,dir=back,weight=10]; +c92 -> c96 [arrowtail=empty,dir=back,weight=10]; } diff --git a/testdata/dot-ref/RunnableRef.dot b/testdata/dot-ref/RunnableRef.dot index b2aaa42..f347d8f 100644 --- a/testdata/dot-ref/RunnableRef.dot +++ b/testdata/dot-ref/RunnableRef.dot @@ -7,14 +7,14 @@ digraph G { graph [fontnames="svg"] edge [fontname="Helvetica",fontsize=10,labelfontname="Helvetica",labelfontsize=10,color="black"]; -node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext]; +node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext,margin=0,width=0,height=0]; nodesep=0.25; ranksep=0.5; // test.RunnableRef -c98 [label=<
RunnableRef
>]; +c98 [label=<
RunnableRef
>]; // test.RunnableRef depend java.lang.Runnable -c98:p -> c99:p [arrowhead=open,style=dashed,weight=0]; +c98 -> c99 [arrowhead=open,style=dashed,weight=0]; // java.lang.Runnable -c99 [label=<
«interface»
Runnable
>, URL="http://docs.oracle.com/javase/7/docs/api/java/lang/Runnable.html"]; +c99 [label=<
«interface»
Runnable
>, URL="http://docs.oracle.com/javase/7/docs/api/java/lang/Runnable.html"]; } diff --git a/testdata/dot-ref/Style.dot b/testdata/dot-ref/Style.dot index 22911a2..09ab5f4 100644 --- a/testdata/dot-ref/Style.dot +++ b/testdata/dot-ref/Style.dot @@ -7,22 +7,22 @@ digraph G { graph [fontnames="svg"] edge [fontname="arial",fontsize=10,labelfontname="arial",labelfontsize=10,color="black"]; -node [fontname="arial",fontcolor="black",fontsize=9,shape=plaintext]; +node [fontname="arial",fontcolor="black",fontsize=9,shape=plaintext,margin=0,width=0,height=0]; nodesep=0.25; ranksep=0.5; // net.sf.whatever.test.AbstractBase -c112 [label=<
«base»
AbstractBase
net.sf.whatever.test
{since = 1.0}
field : int
{since = 1.5}
abstractMethod()
concreteMethod() : int
>]; +c112 [label=<
«base»
AbstractBase
net.sf.whatever.test
{since = 1.0}
field : int
{since = 1.5}
abstractMethod()
concreteMethod() : int
>]; // net.sf.whatever.test.Composite -c113 [label=<
Composite
net.sf.whatever.test
>]; +c113 [label=<
Composite
net.sf.whatever.test
>]; // net.sf.whatever.test.Style -c114 [label=<
Style
net.sf.whatever.test
>]; +c114 [label=<
Style
net.sf.whatever.test
>]; // net.sf.whatever.test.Composite extends net.sf.whatever.test.AbstractBase -c112:p -> c113:p [arrowtail=empty,dir=back,weight=10]; +c112 -> c113 [arrowtail=empty,dir=back,weight=10]; // net.sf.whatever.test.Composite composed from.Outer.Space.AlienClass -c113:p -> c115:p [arrowhead=none,arrowtail=diamond,dir=back,weight=6,taillabel="1",label="has",headlabel="*"]; +c113 -> c115 [arrowhead=none,arrowtail=diamond,dir=back,weight=6,taillabel="1",label="has",headlabel="*"]; // net.sf.whatever.test.Style extends net.sf.whatever.test.AbstractBase -c112:p -> c114:p [arrowtail=empty,dir=back,weight=10]; +c112 -> c114 [arrowtail=empty,dir=back,weight=10]; // from.Outer.Space.AlienClass -c115[label=<
AlienClass
from.Outer.Space
>]; +c115[label=<
AlienClass
from.Outer.Space
>]; } diff --git a/testdata/dot-ref/TestHideOp.dot b/testdata/dot-ref/TestHideOp.dot index 92ea15a..793bf78 100644 --- a/testdata/dot-ref/TestHideOp.dot +++ b/testdata/dot-ref/TestHideOp.dot @@ -7,10 +7,10 @@ digraph G { graph [fontnames="svg"] edge [fontname="Helvetica",fontsize=10,labelfontname="Helvetica",labelfontsize=10,color="black"]; -node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext]; +node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext,margin=0,width=0,height=0]; nodesep=0.25; ranksep=0.5; // test.TestHideOp -c117 [label=<
TestHideOp
>]; +c117 [label=<
TestHideOp
>]; } diff --git a/testdata/dot-ref/ViewAll.dot b/testdata/dot-ref/ViewAll.dot index 4380432..84cf660 100644 --- a/testdata/dot-ref/ViewAll.dot +++ b/testdata/dot-ref/ViewAll.dot @@ -7,26 +7,26 @@ digraph G { graph [fontnames="svg"] edge [fontname="Helvetica",fontsize=10,labelfontname="Helvetica",labelfontsize=10,color="black"]; -node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext]; +node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext,margin=0,width=0,height=0]; nodesep=0.25; ranksep=0.5; // gr.spinellis.basic.invoice.InvoiceItem -c355 [label=<
InvoiceItem
>]; +c355 [label=<
InvoiceItem
>]; // gr.spinellis.basic.invoice.Invoice -c356 [label=<
Invoice
>]; +c356 [label=<
Invoice
>]; // gr.spinellis.basic.invoice.Customer -c357 [label=<
Customer
>]; +c357 [label=<
Customer
>]; // gr.spinellis.basic.product.Product -c358 [label=<
Product
>]; +c358 [label=<
Product
>]; // gr.spinellis.basic.product.Category -c359 [label=<
Category
>]; +c359 [label=<
Category
>]; // gr.spinellis.basic.invoice.InvoiceItem assoc gr.spinellis.basic.product.Product -c355:p -> c358:p [arrowhead=none,weight=2,taillabel="*", headlabel="1"]; +c355 -> c358 [arrowhead=none,weight=2,taillabel="*", headlabel="1"]; // gr.spinellis.basic.invoice.Invoice assoc gr.spinellis.basic.invoice.Customer -c356:p -> c357:p [arrowhead=none,weight=2,taillabel="*", headlabel="1"]; +c356 -> c357 [arrowhead=none,weight=2,taillabel="*", headlabel="1"]; // gr.spinellis.basic.invoice.Invoice composed gr.spinellis.basic.invoice.InvoiceItem -c356:p -> c355:p [arrowhead=none,arrowtail=diamond,dir=back,weight=6,taillabel="1", headlabel="*"]; +c356 -> c355 [arrowhead=none,arrowtail=diamond,dir=back,weight=6,taillabel="1", headlabel="*"]; // gr.spinellis.basic.product.Product assoc gr.spinellis.basic.product.Category -c358:p -> c359:p [arrowhead=none,weight=2,taillabel="*", headlabel="1"]; +c358 -> c359 [arrowhead=none,weight=2,taillabel="*", headlabel="1"]; } diff --git a/testdata/dot-ref/ViewAllDetailed.dot b/testdata/dot-ref/ViewAllDetailed.dot index 9413de1..7833953 100644 --- a/testdata/dot-ref/ViewAllDetailed.dot +++ b/testdata/dot-ref/ViewAllDetailed.dot @@ -7,26 +7,26 @@ digraph G { graph [fontnames="svg"] edge [fontname="Helvetica",fontsize=10,labelfontname="Helvetica",labelfontsize=10,color="black"]; -node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext]; +node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext,margin=0,width=0,height=0]; nodesep=0.25; ranksep=0.5; // gr.spinellis.basic.invoice.InvoiceItem -c317 [label=<
InvoiceItem
product : Product
quantity : int
>]; +c317 [label=<
InvoiceItem
product : Product
quantity : int
>]; // gr.spinellis.basic.invoice.Invoice -c318 [label=<
Invoice
total : double
items : InvoiceItem[]
customer : Customer
addItem(p : Product, quantity : int)
>]; +c318 [label=<
Invoice
total : double
items : InvoiceItem[]
customer : Customer
addItem(p : Product, quantity : int)
>]; // gr.spinellis.basic.invoice.Customer -c319 [label=<
Customer
name : String
>]; +c319 [label=<
Customer
name : String
>]; // gr.spinellis.basic.product.Product -c320 [label=<
Product
name : String
stock : int
price : double
category : Category
>]; +c320 [label=<
Product
name : String
stock : int
price : double
category : Category
>]; // gr.spinellis.basic.product.Category -c321 [label=<
Category
name : String
products : List<>
>]; +c321 [label=<
Category
name : String
products : List<>
>]; // gr.spinellis.basic.invoice.InvoiceItem assoc gr.spinellis.basic.product.Product -c317:p -> c320:p [arrowhead=none,weight=2,taillabel="*", headlabel="1"]; +c317 -> c320 [arrowhead=none,weight=2,taillabel="*", headlabel="1"]; // gr.spinellis.basic.invoice.Invoice assoc gr.spinellis.basic.invoice.Customer -c318:p -> c319:p [arrowhead=none,weight=2,taillabel="*", headlabel="1"]; +c318 -> c319 [arrowhead=none,weight=2,taillabel="*", headlabel="1"]; // gr.spinellis.basic.invoice.Invoice composed gr.spinellis.basic.invoice.InvoiceItem -c318:p -> c317:p [arrowhead=none,arrowtail=diamond,dir=back,weight=6,taillabel="1", headlabel="*"]; +c318 -> c317 [arrowhead=none,arrowtail=diamond,dir=back,weight=6,taillabel="1", headlabel="*"]; // gr.spinellis.basic.product.Product assoc gr.spinellis.basic.product.Category -c320:p -> c321:p [arrowhead=none,weight=2,taillabel="*", headlabel="1"]; +c320 -> c321 [arrowhead=none,weight=2,taillabel="*", headlabel="1"]; } diff --git a/testdata/dot-ref/ViewAtt.dot b/testdata/dot-ref/ViewAtt.dot index cd7a8a3..f7ea886 100644 --- a/testdata/dot-ref/ViewAtt.dot +++ b/testdata/dot-ref/ViewAtt.dot @@ -7,26 +7,26 @@ digraph G { graph [fontnames="svg"] edge [fontname="Helvetica",fontsize=10,labelfontname="Helvetica",labelfontsize=10,color="black"]; -node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext]; +node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext,margin=0,width=0,height=0]; nodesep=0.25; ranksep=0.5; // gr.spinellis.basic.invoice.InvoiceItem -c279 [label=<
InvoiceItem
product
quantity
>, fontname="Helvetica", fontcolor="black", fontsize=16.0]; +c279 [label=<
InvoiceItem
product
quantity
>, fontname="Helvetica", fontcolor="black", fontsize=16.0]; // gr.spinellis.basic.invoice.Invoice -c280 [label=<
Invoice
total
items
customer
>, fontname="Helvetica", fontcolor="black", fontsize=16.0]; +c280 [label=<
Invoice
total
items
customer
>, fontname="Helvetica", fontcolor="black", fontsize=16.0]; // gr.spinellis.basic.invoice.Customer -c281 [label=<
Customer
name
>, fontname="Helvetica", fontcolor="black", fontsize=16.0]; +c281 [label=<
Customer
name
>, fontname="Helvetica", fontcolor="black", fontsize=16.0]; // gr.spinellis.basic.product.Product -c282 [label=<
Product
name
stock
price
category
>, fontname="Helvetica", fontcolor="black", fontsize=16.0]; +c282 [label=<
Product
name
stock
price
category
>, fontname="Helvetica", fontcolor="black", fontsize=16.0]; // gr.spinellis.basic.product.Category -c283 [label=<
Category
name
products
>, fontname="Helvetica", fontcolor="black", fontsize=16.0]; +c283 [label=<
Category
name
products
>, fontname="Helvetica", fontcolor="black", fontsize=16.0]; // gr.spinellis.basic.invoice.InvoiceItem assoc gr.spinellis.basic.product.Product -c279:p -> c282:p [arrowhead=none,weight=2,taillabel="*", headlabel="1"]; +c279 -> c282 [arrowhead=none,weight=2,taillabel="*", headlabel="1"]; // gr.spinellis.basic.invoice.Invoice assoc gr.spinellis.basic.invoice.Customer -c280:p -> c281:p [arrowhead=none,weight=2,taillabel="*", headlabel="1"]; +c280 -> c281 [arrowhead=none,weight=2,taillabel="*", headlabel="1"]; // gr.spinellis.basic.invoice.Invoice composed gr.spinellis.basic.invoice.InvoiceItem -c280:p -> c279:p [arrowhead=none,arrowtail=diamond,dir=back,weight=6,taillabel="1", headlabel="*"]; +c280 -> c279 [arrowhead=none,arrowtail=diamond,dir=back,weight=6,taillabel="1", headlabel="*"]; // gr.spinellis.basic.product.Product assoc gr.spinellis.basic.product.Category -c282:p -> c283:p [arrowhead=none,weight=2,taillabel="*", headlabel="1"]; +c282 -> c283 [arrowhead=none,weight=2,taillabel="*", headlabel="1"]; } diff --git a/testdata/dot-ref/ViewChildEmpty.dot b/testdata/dot-ref/ViewChildEmpty.dot index 8cd3f95..ab25f23 100644 --- a/testdata/dot-ref/ViewChildEmpty.dot +++ b/testdata/dot-ref/ViewChildEmpty.dot @@ -7,14 +7,14 @@ digraph G { graph [fontnames="svg"] edge [fontname="Helvetica",fontsize=10,labelfontname="Helvetica",labelfontsize=10,color="black"]; -node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext]; +node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext,margin=0,width=0,height=0]; nodesep=0.25; ranksep=0.5; // gr.spinellis.basic.product.Product -c244 [label=<
Product
>]; +c244 [label=<
Product
>]; // gr.spinellis.basic.product.Category -c245 [label=<
Category
>]; +c245 [label=<
Category
>]; // gr.spinellis.basic.product.Product assoc gr.spinellis.basic.product.Category -c244:p -> c245:p [arrowhead=none,weight=2,taillabel="*", headlabel="1"]; +c244 -> c245 [arrowhead=none,weight=2,taillabel="*", headlabel="1"]; } diff --git a/testdata/dot-ref/ViewChildOverride.dot b/testdata/dot-ref/ViewChildOverride.dot index e798251..4297729 100644 --- a/testdata/dot-ref/ViewChildOverride.dot +++ b/testdata/dot-ref/ViewChildOverride.dot @@ -7,14 +7,14 @@ digraph G { graph [fontnames="svg"] edge [fontname="Helvetica",fontsize=10,labelfontname="Helvetica",labelfontsize=10,color="black"]; -node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext]; +node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext,margin=0,width=0,height=0]; nodesep=0.25; ranksep=0.5; // gr.spinellis.basic.product.Product -c206 [label=<
Product
name
stock
price
category
>]; +c206 [label=<
Product
name
stock
price
category
>]; // gr.spinellis.basic.product.Category -c207 [label=<
Category
>]; +c207 [label=<
Category
>]; // gr.spinellis.basic.product.Product assoc gr.spinellis.basic.product.Category -c206:p -> c207:p [arrowhead=none,weight=2,taillabel="*", headlabel="1"]; +c206 -> c207 [arrowhead=none,weight=2,taillabel="*", headlabel="1"]; } diff --git a/testdata/dot-ref/ViewColors.dot b/testdata/dot-ref/ViewColors.dot index 09dc45a..59e9cec 100644 --- a/testdata/dot-ref/ViewColors.dot +++ b/testdata/dot-ref/ViewColors.dot @@ -7,30 +7,30 @@ digraph G { graph [fontnames="svg"] edge [fontname="Helvetica",fontsize=10,labelfontname="Helvetica",labelfontsize=10,color="black"]; -node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext]; +node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext,margin=0,width=0,height=0]; nodesep=0.25; ranksep=0.5; // gr.spinellis.basic.invoice.InvoiceItem -c164 [label=<
InvoiceItem
>]; +c164 [label=<
InvoiceItem
>]; // gr.spinellis.basic.invoice.Invoice -c165 [label=<
Invoice
>]; +c165 [label=<
Invoice
>]; // gr.spinellis.basic.invoice.Customer -c166 [label=<
Customer
>]; +c166 [label=<
Customer
>]; // gr.spinellis.basic.product.Product -c167 [label=<
Product
>]; +c167 [label=<
Product
>]; // gr.spinellis.basic.product.Category -c168 [label=<
Category
>]; +c168 [label=<
Category
>]; // gr.spinellis.basic.invoice.InvoiceItem assoc gr.spinellis.basic.product.Product -c164:p -> c167:p [arrowhead=none,weight=2,taillabel="*", headlabel="1"]; +c164 -> c167 [arrowhead=none,weight=2,taillabel="*", headlabel="1"]; // gr.spinellis.basic.invoice.Invoice assoc gr.spinellis.basic.invoice.Customer -c165:p -> c166:p [arrowhead=none,weight=2,taillabel="*", headlabel="1"]; +c165 -> c166 [arrowhead=none,weight=2,taillabel="*", headlabel="1"]; // gr.spinellis.basic.invoice.Invoice composed gr.spinellis.basic.invoice.InvoiceItem -c165:p -> c164:p [arrowhead=none,arrowtail=diamond,dir=back,weight=6,taillabel="1", headlabel="*"]; +c165 -> c164 [arrowhead=none,arrowtail=diamond,dir=back,weight=6,taillabel="1", headlabel="*"]; // gr.spinellis.basic.product.Product assoc gr.spinellis.basic.product.Category -c167:p -> c168:p [arrowhead=none,weight=2,taillabel="*", headlabel="1"]; +c167 -> c168 [arrowhead=none,weight=2,taillabel="*", headlabel="1"]; // gr.spinellis.basic.product.Category depend java.util.List -c168:p -> c202:p [arrowhead=open,style=dashed,weight=0]; +c168 -> c202 [arrowhead=open,style=dashed,weight=0]; // java.util.List -c202 [label=<
«interface»
List<E>
>, URL="http://docs.oracle.com/javase/7/docs/api/java/util/List.html"]; +c202 [label=<
«interface»
List<E>
>, URL="http://docs.oracle.com/javase/7/docs/api/java/util/List.html"]; } diff --git a/testdata/dot-ref/ViewContext.dot b/testdata/dot-ref/ViewContext.dot index 869c42f..a20006b 100644 --- a/testdata/dot-ref/ViewContext.dot +++ b/testdata/dot-ref/ViewContext.dot @@ -7,38 +7,38 @@ digraph G { graph [fontnames="svg"] edge [fontname="Helvetica",fontsize=10,labelfontname="Helvetica",labelfontsize=10,color="black"]; -node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext]; +node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext,margin=0,width=0,height=0]; nodesep=0.25; ranksep=0.5; // gr.spinellis.context.classes.AClient -c424 [label=<
AClient
>]; +c424 [label=<
AClient
>]; // gr.spinellis.context.classes.ASubclass -c426 [label=<
ASubclass
>]; +c426 [label=<
ASubclass
>]; // gr.spinellis.context.classes.E -c427 [label=<
E
>]; +c427 [label=<
E
>]; // gr.spinellis.context.classes.D -c429 [label=<
D
>]; +c429 [label=<
D
>]; // gr.spinellis.context.classes.B -c432 [label=<
B
>]; +c432 [label=<
B
>]; // gr.spinellis.context.classes.ABaseClass -c433 [label=<
ABaseClass
>]; +c433 [label=<
ABaseClass
>]; // gr.spinellis.context.classes.A -c434 [label=<
A
>]; +c434 [label=<
A
>]; // gr.spinellis.context.classes.ASubclass extends gr.spinellis.context.classes.A -c434:p -> c426:p [arrowtail=empty,dir=back,weight=10]; +c434 -> c426 [arrowtail=empty,dir=back,weight=10]; // gr.spinellis.context.classes.A extends gr.spinellis.context.classes.ABaseClass -c433:p -> c434:p [arrowtail=empty,dir=back,weight=10]; +c433 -> c434 [arrowtail=empty,dir=back,weight=10]; // gr.spinellis.context.classes.D navassoc gr.spinellis.context.classes.A -c429:p -> c434:p [arrowhead=open,weight=1]; +c429 -> c434 [arrowhead=open,weight=1]; // gr.spinellis.context.classes.A navassoc gr.spinellis.context.classes.B -c434:p -> c432:p [arrowhead=open,weight=1]; +c434 -> c432 [arrowhead=open,weight=1]; // gr.spinellis.context.classes.A navassoc javax.swing.JComponent -c434:p -> c509:p [arrowhead=open,weight=1]; +c434 -> c509 [arrowhead=open,weight=1]; // gr.spinellis.context.classes.AClient depend gr.spinellis.context.classes.A -c424:p -> c434:p [arrowhead=open,style=dashed,weight=0]; +c424 -> c434 [arrowhead=open,style=dashed,weight=0]; // gr.spinellis.context.classes.A depend gr.spinellis.context.classes.E -c434:p -> c427:p [arrowhead=open,style=dashed,weight=0]; +c434 -> c427 [arrowhead=open,style=dashed,weight=0]; // javax.swing.JComponent -c509 [label=<
JComponent
>, URL="http://docs.oracle.com/javase/7/docs/api/javax/swing/JComponent.html"]; +c509 [label=<
JComponent
>, URL="http://docs.oracle.com/javase/7/docs/api/javax/swing/JComponent.html"]; } diff --git a/testdata/dot-ref/ViewInterfaces.dot b/testdata/dot-ref/ViewInterfaces.dot index 4c258fb..7e1938e 100644 --- a/testdata/dot-ref/ViewInterfaces.dot +++ b/testdata/dot-ref/ViewInterfaces.dot @@ -7,26 +7,26 @@ digraph G { graph [fontnames="svg"] edge [fontname="Helvetica",fontsize=10,labelfontname="Helvetica",labelfontsize=10,color="black"]; -node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext]; +node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext,margin=0,width=0,height=0]; nodesep=0.25; ranksep=0.5; // gr.spinellis.iface.classes.FarImplementor -c534 [label=<
FarImplementor
>]; +c534 [label=<
FarImplementor
>]; // gr.spinellis.iface.classes.DirectImplementor -c535 [label=<
DirectImplementor
>]; +c535 [label=<
DirectImplementor
>]; // gr.spinellis.iface.classes.SubSubFace -c537 [label=<
«interface»
SubSubFace
>]; +c537 [label=<
«interface»
SubSubFace
>]; // gr.spinellis.iface.classes.SubFace -c538 [label=<
«interface»
SubFace
>]; +c538 [label=<
«interface»
SubFace
>]; // gr.spinellis.iface.classes.Face -c539 [label=<
«interface»
Face
>]; +c539 [label=<
«interface»
Face
>]; // gr.spinellis.iface.classes.FarImplementor implements gr.spinellis.iface.classes.SubSubFace -c537:p -> c534:p [arrowtail=empty,style=dashed,dir=back,weight=9]; +c537 -> c534 [arrowtail=empty,style=dashed,dir=back,weight=9]; // gr.spinellis.iface.classes.DirectImplementor implements gr.spinellis.iface.classes.Face -c539:p -> c535:p [arrowtail=empty,style=dashed,dir=back,weight=9]; +c539 -> c535 [arrowtail=empty,style=dashed,dir=back,weight=9]; // gr.spinellis.iface.classes.SubSubFace implements gr.spinellis.iface.classes.SubFace -c538:p -> c537:p [arrowtail=empty,style=dashed,dir=back,weight=9]; +c538 -> c537 [arrowtail=empty,style=dashed,dir=back,weight=9]; // gr.spinellis.iface.classes.SubFace implements gr.spinellis.iface.classes.Face -c539:p -> c538:p [arrowtail=empty,style=dashed,dir=back,weight=9]; +c539 -> c538 [arrowtail=empty,style=dashed,dir=back,weight=9]; } diff --git a/testdata/dot-ref/ViewProduct.dot b/testdata/dot-ref/ViewProduct.dot index edba8fc..8f2192a 100644 --- a/testdata/dot-ref/ViewProduct.dot +++ b/testdata/dot-ref/ViewProduct.dot @@ -7,14 +7,14 @@ digraph G { graph [fontnames="svg"] edge [fontname="Helvetica",fontsize=10,labelfontname="Helvetica",labelfontsize=10,color="black"]; -node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext]; +node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext,margin=0,width=0,height=0]; nodesep=0.25; ranksep=0.5; // gr.spinellis.basic.product.Product -c129 [label=<
Product
name
stock
price
category
>]; +c129 [label=<
Product
name
stock
price
category
>]; // gr.spinellis.basic.product.Category -c130 [label=<
Category
name
products
>]; +c130 [label=<
Category
name
products
>]; // gr.spinellis.basic.product.Product assoc gr.spinellis.basic.product.Category -c129:p -> c130:p [arrowhead=none,weight=2,taillabel="*", headlabel="1"]; +c129 -> c130 [arrowhead=none,weight=2,taillabel="*", headlabel="1"]; } diff --git a/testdata/dot-ref/ViewSubclasses.dot b/testdata/dot-ref/ViewSubclasses.dot index 980de32..0dc6c7f 100644 --- a/testdata/dot-ref/ViewSubclasses.dot +++ b/testdata/dot-ref/ViewSubclasses.dot @@ -7,26 +7,26 @@ digraph G { graph [fontnames="svg"] edge [fontname="Helvetica",fontsize=10,labelfontname="Helvetica",labelfontsize=10,color="black"]; -node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext]; +node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext,margin=0,width=0,height=0]; nodesep=0.25; ranksep=0.5; // gr.spinellis.subclass.classes.SubOneTwo -c580 [label=<
SubOneTwo
>]; +c580 [label=<
SubOneTwo
>]; // gr.spinellis.subclass.classes.SubOneOne -c581 [label=<
SubOneOne
>]; +c581 [label=<
SubOneOne
>]; // gr.spinellis.subclass.classes.SubTwo -c582 [label=<
SubTwo
>]; +c582 [label=<
SubTwo
>]; // gr.spinellis.subclass.classes.SubOne -c583 [label=<
SubOne
>]; +c583 [label=<
SubOne
>]; // gr.spinellis.subclass.classes.Super -c584 [label=<
Super
>]; +c584 [label=<
Super
>]; // gr.spinellis.subclass.classes.SubOneTwo extends gr.spinellis.subclass.classes.SubOne -c583:p -> c580:p [arrowtail=empty,dir=back,weight=10]; +c583 -> c580 [arrowtail=empty,dir=back,weight=10]; // gr.spinellis.subclass.classes.SubOneOne extends gr.spinellis.subclass.classes.SubOne -c583:p -> c581:p [arrowtail=empty,dir=back,weight=10]; +c583 -> c581 [arrowtail=empty,dir=back,weight=10]; // gr.spinellis.subclass.classes.SubTwo extends gr.spinellis.subclass.classes.Super -c584:p -> c582:p [arrowtail=empty,dir=back,weight=10]; +c584 -> c582 [arrowtail=empty,dir=back,weight=10]; // gr.spinellis.subclass.classes.SubOne extends gr.spinellis.subclass.classes.Super -c584:p -> c583:p [arrowtail=empty,dir=back,weight=10]; +c584 -> c583 [arrowtail=empty,dir=back,weight=10]; } diff --git a/testdata/dot-ref/active.dot b/testdata/dot-ref/active.dot index 3dad458..02c5a4e 100644 --- a/testdata/dot-ref/active.dot +++ b/testdata/dot-ref/active.dot @@ -7,10 +7,10 @@ digraph G { graph [fontnames="svg"] edge [fontname="Helvetica",fontsize=10,labelfontname="Helvetica",labelfontsize=10,color="black"]; -node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext]; +node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext,margin=0,width=0,height=0]; nodesep=0.25; ranksep=0.5; // Active -c32 [label=<
Active
run()
>]; +c32 [label=<
Active
run()
>]; } diff --git a/testdata/dot-ref/advrel.dot b/testdata/dot-ref/advrel.dot index 8dd6661..2b21798 100644 --- a/testdata/dot-ref/advrel.dot +++ b/testdata/dot-ref/advrel.dot @@ -7,30 +7,30 @@ digraph G { graph [fontnames="svg"] edge [fontname="Helvetica",fontsize=10,labelfontname="Helvetica",labelfontsize=10,color="black"]; -node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext]; +node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext,margin=0,width=0,height=0]; nodesep=0.25; ranksep=0.5; // Controller -c5 [label=<
Controller
>]; +c5 [label=<
Controller
>]; // EmbeddedAgent -c6 [label=<
EmbeddedAgent
>]; +c6 [label=<
EmbeddedAgent
>]; // PowerManager -c7 [label=<
PowerManager
>]; +c7 [label=<
PowerManager
>]; // SetTopController -c8 [label=<
SetTopController
authorizationLevel
startUp()
shutDown()
connect()
>]; +c8 [label=<
SetTopController
authorizationLevel
startUp()
shutDown()
connect()
>]; // ChannelIterator -c9 [label=<
ChannelIterator
>]; +c9 [label=<
ChannelIterator
>]; // URLStreamHandler -c10 [label=<
«interface»
URLStreamHandler
OpenConnection()
parseURL()
setURL()
toExternalForm()
>]; +c10 [label=<
«interface»
URLStreamHandler
OpenConnection()
parseURL()
setURL()
toExternalForm()
>]; // SetTopController extends Controller -c5:p -> c8:p [arrowtail=empty,dir=back,weight=10]; +c5 -> c8 [arrowtail=empty,dir=back,weight=10]; // SetTopController extends EmbeddedAgent -c6:p -> c8:p [arrowtail=empty,dir=back,weight=10]; +c6 -> c8 [arrowtail=empty,dir=back,weight=10]; // SetTopController implements URLStreamHandler -c10:p -> c8:p [arrowtail=empty,style=dashed,dir=back,weight=9]; +c10 -> c8 [arrowtail=empty,style=dashed,dir=back,weight=9]; // SetTopController navassoc PowerManager -c8:p -> c7:p [arrowhead=open,weight=1]; +c8 -> c7 [arrowhead=open,weight=1]; // ChannelIterator depend SetTopController -c9:p -> c8:p [arrowhead=open,style=dashed,weight=0,label="«friend»"]; +c9 -> c8 [arrowhead=open,style=dashed,weight=0,label="«friend»"]; } diff --git a/testdata/dot-ref/assoc.dot b/testdata/dot-ref/assoc.dot index d8c5ca5..29715e0 100644 --- a/testdata/dot-ref/assoc.dot +++ b/testdata/dot-ref/assoc.dot @@ -7,19 +7,19 @@ digraph G { graph [fontnames="svg"] edge [fontname="Helvetica",fontsize=10,labelfontname="Helvetica",labelfontsize=10,color="black"]; -node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext]; +node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext,margin=0,width=0,height=0]; nodesep=0.25; ranksep=0.5; rankdir=LR; // UserGroup -c12 [label=<
UserGroup
>]; +c12 [label=<
UserGroup
>]; // User -c13 [label=<
User
>]; +c13 [label=<
User
>]; // Password -c14 [label=<
Password
>]; +c14 [label=<
Password
>]; // UserGroup assoc User -c12:p -> c13:p [arrowhead=none,weight=2,taillabel="*", headlabel="*\n\n+user "]; +c12 -> c13 [arrowhead=none,weight=2,taillabel="*", headlabel="*\n\n+user "]; // User navassoc Password -c13:p -> c14:p [arrowhead=open,weight=1,taillabel="1\n\n+owner\r", headlabel="*\n\n+key"]; +c13 -> c14 [arrowhead=open,weight=1,taillabel="1\n\n+owner\r", headlabel="*\n\n+key"]; } diff --git a/testdata/dot-ref/car.dot b/testdata/dot-ref/car.dot index b152656..1b3b572 100644 --- a/testdata/dot-ref/car.dot +++ b/testdata/dot-ref/car.dot @@ -7,22 +7,22 @@ digraph G { graph [fontnames="svg"] edge [fontname="Helvetica",fontsize=10,labelfontname="Helvetica",labelfontsize=10,color="black"]; -node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext]; +node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext,margin=0,width=0,height=0]; nodesep=0.25; ranksep=0.5; // Tyre -c15 [label=<
Tyre
>]; +c15 [label=<
Tyre
>]; // Engine -c16 [label=<
Engine
>]; +c16 [label=<
Engine
>]; // Body -c17 [label=<
Body
>]; +c17 [label=<
Body
>]; // Car -c18 [label=<
Car
>]; +c18 [label=<
Car
>]; // Car composed Tyre -c18:p -> c15:p [arrowhead=none,arrowtail=diamond,dir=back,weight=6,taillabel="1", headlabel="4"]; +c18 -> c15 [arrowhead=none,arrowtail=diamond,dir=back,weight=6,taillabel="1", headlabel="4"]; // Car composed Engine -c18:p -> c16:p [arrowhead=none,arrowtail=diamond,dir=back,weight=6,taillabel="1", headlabel="1"]; +c18 -> c16 [arrowhead=none,arrowtail=diamond,dir=back,weight=6,taillabel="1", headlabel="1"]; // Car composed Body -c18:p -> c17:p [arrowhead=none,arrowtail=diamond,dir=back,weight=6,taillabel="1", headlabel="1"]; +c18 -> c17 [arrowhead=none,arrowtail=diamond,dir=back,weight=6,taillabel="1", headlabel="1"]; } diff --git a/testdata/dot-ref/catalina.dot b/testdata/dot-ref/catalina.dot index 20eeb41..b0b624a 100644 --- a/testdata/dot-ref/catalina.dot +++ b/testdata/dot-ref/catalina.dot @@ -7,52 +7,52 @@ digraph G { graph [fontnames="svg"] edge [fontname="Helvetica",fontsize=10,labelfontname="Helvetica",labelfontsize=10,color="black"]; -node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext]; +node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext,margin=0,width=0,height=0]; nodesep=0.25; ranksep=0.5; // HttpResponseBase -c19 [label=<
HttpResponseBase
>]; +c19 [label=<
HttpResponseBase
>]; // HttpResponseWrapper -c20 [label=<
HttpResponseWrapper
>]; +c20 [label=<
HttpResponseWrapper
>]; // HttpResponseFacade -c21 [label=<
HttpResponseFacade
>]; +c21 [label=<
HttpResponseFacade
>]; // ResponseWrapper -c22 [label=<
ResponseWrapper
>]; +c22 [label=<
ResponseWrapper
>]; // HttpResponse -c23 [label=<
«interface»
HttpResponse
>]; +c23 [label=<
«interface»
HttpResponse
>]; // ResponseBase -c24 [label=<
ResponseBase
>]; +c24 [label=<
ResponseBase
>]; // HttpServletResponse -c25 [label=<
«interface»
HttpServletResponse
>]; +c25 [label=<
«interface»
HttpServletResponse
>]; // ResponseFacade -c26 [label=<
ResponseFacade
>]; +c26 [label=<
ResponseFacade
>]; // ServletResponse -c27 [label=<
«interface»
ServletResponse
>]; +c27 [label=<
«interface»
ServletResponse
>]; // Response -c28 [label=<
«interface»
Response
>]; +c28 [label=<
«interface»
Response
>]; // HttpResponseBase extends ResponseBase -c24:p -> c19:p [arrowtail=empty,dir=back,weight=10]; +c24 -> c19 [arrowtail=empty,dir=back,weight=10]; // HttpResponseBase implements HttpResponse -c23:p -> c19:p [arrowtail=empty,style=dashed,dir=back,weight=9]; +c23 -> c19 [arrowtail=empty,style=dashed,dir=back,weight=9]; // HttpResponseBase implements HttpServletResponse -c25:p -> c19:p [arrowtail=empty,style=dashed,dir=back,weight=9]; +c25 -> c19 [arrowtail=empty,style=dashed,dir=back,weight=9]; // HttpResponseWrapper extends ResponseWrapper -c22:p -> c20:p [arrowtail=empty,dir=back,weight=10]; +c22 -> c20 [arrowtail=empty,dir=back,weight=10]; // HttpResponseWrapper implements HttpResponse -c23:p -> c20:p [arrowtail=empty,style=dashed,dir=back,weight=9]; +c23 -> c20 [arrowtail=empty,style=dashed,dir=back,weight=9]; // HttpResponseFacade extends ResponseFacade -c26:p -> c21:p [arrowtail=empty,dir=back,weight=10]; +c26 -> c21 [arrowtail=empty,dir=back,weight=10]; // HttpResponseFacade implements HttpServletResponse -c25:p -> c21:p [arrowtail=empty,style=dashed,dir=back,weight=9]; +c25 -> c21 [arrowtail=empty,style=dashed,dir=back,weight=9]; // ResponseWrapper implements Response -c28:p -> c22:p [arrowtail=empty,style=dashed,dir=back,weight=9]; +c28 -> c22 [arrowtail=empty,style=dashed,dir=back,weight=9]; // HttpResponse implements Response -c28:p -> c23:p [arrowtail=empty,style=dashed,dir=back,weight=9]; +c28 -> c23 [arrowtail=empty,style=dashed,dir=back,weight=9]; // ResponseBase implements Response -c28:p -> c24:p [arrowtail=empty,style=dashed,dir=back,weight=9]; +c28 -> c24 [arrowtail=empty,style=dashed,dir=back,weight=9]; // ResponseBase implements ServletResponse -c27:p -> c24:p [arrowtail=empty,style=dashed,dir=back,weight=9]; +c27 -> c24 [arrowtail=empty,style=dashed,dir=back,weight=9]; // ResponseFacade implements ServletResponse -c27:p -> c26:p [arrowtail=empty,style=dashed,dir=back,weight=9]; +c27 -> c26 [arrowtail=empty,style=dashed,dir=back,weight=9]; } diff --git a/testdata/dot-ref/class-eg.dot b/testdata/dot-ref/class-eg.dot index 2cc6568..3ac8d11 100644 --- a/testdata/dot-ref/class-eg.dot +++ b/testdata/dot-ref/class-eg.dot @@ -7,18 +7,18 @@ digraph G { graph [fontnames="svg"] edge [fontname="Helvetica",fontsize=10,labelfontname="Helvetica",labelfontsize=10,color="black"]; -node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext]; +node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext,margin=0,width=0,height=0]; nodesep=0.25; ranksep=0.5; // Person -c30 [label=<
Person
>]; +c30 [label=<
Person
>]; // Employee -c31 [label=<
Employee
>]; +c31 [label=<
Employee
>]; // Client -c32 [label=<
Client
>]; +c32 [label=<
Client
>]; // Employee extends Person -c30:p -> c31:p [arrowtail=empty,dir=back,weight=10]; +c30 -> c31 [arrowtail=empty,dir=back,weight=10]; // Client extends Person -c30:p -> c32:p [arrowtail=empty,dir=back,weight=10]; +c30 -> c32 [arrowtail=empty,dir=back,weight=10]; } diff --git a/testdata/dot-ref/classadd.dot b/testdata/dot-ref/classadd.dot index bdd4995..acc4817 100644 --- a/testdata/dot-ref/classadd.dot +++ b/testdata/dot-ref/classadd.dot @@ -7,10 +7,10 @@ digraph G { graph [fontnames="svg"] edge [fontname="Helvetica",fontsize=10,labelfontname="Helvetica",labelfontsize=10,color="black"]; -node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext]; +node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext,margin=0,width=0,height=0]; nodesep=0.25; ranksep=0.5; // ActionQueue -c35 [label=<
«container»
ActionQueue
{version = 3.2}
add(a : Action)
add(a : Action, n : int)
{version = 1.0}
remove(n : int)
«query»
length() : int
«helper functions»
reorder()
>]; +c35 [label=<
«container»
ActionQueue
{version = 3.2}
add(a : Action)
add(a : Action, n : int)
{version = 1.0}
remove(n : int)
«query»
length() : int
«helper functions»
reorder()
>]; } diff --git a/testdata/dot-ref/color.dot b/testdata/dot-ref/color.dot index 8c1ab49..32ccad6 100644 --- a/testdata/dot-ref/color.dot +++ b/testdata/dot-ref/color.dot @@ -7,24 +7,24 @@ digraph G { graph [fontnames="svg"] edge [fontname="Helvetica",fontsize=10,labelfontname="Helvetica",labelfontsize=10,color="yellow"]; -node [fontname="Serif",fontcolor="black",fontsize=14,shape=plaintext]; +node [fontname="Serif",fontcolor="black",fontsize=14,shape=plaintext,margin=0,width=0,height=0]; nodesep=0.25; ranksep=0.5; bgcolor=".7 .9 1"; // Pixel -c37 [label=<
Pixel
- x : int
- y : int
>]; +c37 [label=<
Pixel
- x : int
- y : int
>]; // Red -c38 [label=<
Red
>]; +c38 [label=<
Red
>]; // Green -c39 [label=<
Green
>]; +c39 [label=<
Green
>]; // Blue -c40 [label=<
Blue
>]; +c40 [label=<
Blue
>]; // Pixel composed Red -c37:p -> c38:p [arrowhead=none,arrowtail=diamond,dir=back,weight=6]; +c37 -> c38 [arrowhead=none,arrowtail=diamond,dir=back,weight=6]; // Pixel composed Green -c37:p -> c39:p [arrowhead=none,arrowtail=diamond,dir=back,weight=6]; +c37 -> c39 [arrowhead=none,arrowtail=diamond,dir=back,weight=6]; // Pixel composed Blue -c37:p -> c40:p [arrowhead=none,arrowtail=diamond,dir=back,weight=6]; +c37 -> c40 [arrowhead=none,arrowtail=diamond,dir=back,weight=6]; } diff --git a/testdata/dot-ref/ctor.dot b/testdata/dot-ref/ctor.dot index f9b0881..b35fe05 100644 --- a/testdata/dot-ref/ctor.dot +++ b/testdata/dot-ref/ctor.dot @@ -7,10 +7,10 @@ digraph G { graph [fontnames="svg"] edge [fontname="Helvetica",fontsize=10,labelfontname="Helvetica",labelfontsize=10,color="black"]; -node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext]; +node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext,margin=0,width=0,height=0]; nodesep=0.25; ranksep=0.5; // Junk -c43 [label=<
Junk
- value : int
+ Junk(val : int)
>]; +c43 [label=<
Junk
- value : int
+ Junk(val : int)
>]; } diff --git a/testdata/dot-ref/disable.dot b/testdata/dot-ref/disable.dot index 0d4d05f..7388fd1 100644 --- a/testdata/dot-ref/disable.dot +++ b/testdata/dot-ref/disable.dot @@ -7,14 +7,14 @@ digraph G { graph [fontnames="svg"] edge [fontname="Helvetica",fontsize=10,labelfontname="Helvetica",labelfontsize=10,color="black"]; -node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext]; +node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext,margin=0,width=0,height=0]; nodesep=0.25; ranksep=0.5; // Person1 -c45 [label=<
Person1
~ address : String
~ name : String
>]; +c45 [label=<
Person1
~ address : String
~ name : String
>]; // Person2 -c46 [label=<
Person2
~ displayName() : String
>]; +c46 [label=<
Person2
~ displayName() : String
>]; // Person3 -c47 [label=<
Person3
address : Address
name : String
displayName() : String
>]; +c47 [label=<
Person3
address : Address
name : String
displayName() : String
>]; } diff --git a/testdata/dot-ref/extends.dot b/testdata/dot-ref/extends.dot index 6ea60c7..6328183 100644 --- a/testdata/dot-ref/extends.dot +++ b/testdata/dot-ref/extends.dot @@ -7,12 +7,12 @@ digraph G { graph [fontnames="svg"] edge [fontname="Helvetica",fontsize=10,labelfontname="Helvetica",labelfontsize=10,color="black"]; -node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext]; +node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext,margin=0,width=0,height=0]; nodesep=0.25; ranksep=0.5; // Base -c48 [label=<
Base
>]; +c48 [label=<
Base
>]; // Test2 -c49 [label=<
Test2<B extends Base>
>]; +c49 [label=<
Test2<B extends Base>
>]; } diff --git a/testdata/dot-ref/foo.dot b/testdata/dot-ref/foo.dot index fcb53fd..21a8513 100644 --- a/testdata/dot-ref/foo.dot +++ b/testdata/dot-ref/foo.dot @@ -7,20 +7,20 @@ digraph G { graph [fontnames="svg"] edge [fontname="Helvetica",fontsize=10,labelfontname="Helvetica",labelfontsize=10,color="black"]; -node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext]; +node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext,margin=0,width=0,height=0]; nodesep=0.25; ranksep=0.5; // a.b.c.UMLOptions -c50 [label=<
UMLOptions
>]; +c50 [label=<
UMLOptions
>]; // a.b.c.UserGroup -c51 [label=<
UserGroup
>]; +c51 [label=<
UserGroup
>]; // a.b.c.User -c52 [label=<
User
>]; +c52 [label=<
User
>]; // a.b.c.Password -c53 [label=<
Password
>]; +c53 [label=<
Password
>]; // a.b.c.UserGroup assoc a.b.c.User -c51:p -> c52:p [arrowhead=none,weight=2,taillabel="*", headlabel="*\n\n+user "]; +c51 -> c52 [arrowhead=none,weight=2,taillabel="*", headlabel="*\n\n+user "]; // a.b.c.User navassoc a.b.c.Password -c52:p -> c53:p [arrowhead=open,weight=1,taillabel="1\n\n+owner\r", headlabel="*\n\n+key"]; +c52 -> c53 [arrowhead=open,weight=1,taillabel="1\n\n+owner\r", headlabel="*\n\n+key"]; } diff --git a/testdata/dot-ref/general.dot b/testdata/dot-ref/general.dot index 40dd6d1..85e9787 100644 --- a/testdata/dot-ref/general.dot +++ b/testdata/dot-ref/general.dot @@ -7,48 +7,48 @@ digraph G { graph [fontnames="svg"] edge [fontname="Helvetica",fontsize=10,labelfontname="Helvetica",labelfontsize=10,color="black"]; -node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext]; +node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext,margin=0,width=0,height=0]; nodesep=0.25; ranksep=0.5; // Asset -c55 [label=<
Asset
>]; +c55 [label=<
Asset
>]; // InterestBearingItem -c56 [label=<
InterestBearingItem
>]; +c56 [label=<
InterestBearingItem
>]; // InsurableItem -c57 [label=<
InsurableItem
>]; +c57 [label=<
InsurableItem
>]; // BankAccount -c58 [label=<
BankAccount
>]; +c58 [label=<
BankAccount
>]; // RealEstate -c59 [label=<
RealEstate
>]; +c59 [label=<
RealEstate
>]; // Security -c60 [label=<
Security
>]; +c60 [label=<
Security
>]; // Stock -c61 [label=<
Stock
>]; +c61 [label=<
Stock
>]; // Bond -c62 [label=<
Bond
>]; +c62 [label=<
Bond
>]; // CheckingAccount -c63 [label=<
CheckingAccount
>]; +c63 [label=<
CheckingAccount
>]; // SavingsAccount -c64 [label=<
SavingsAccount
>]; +c64 [label=<
SavingsAccount
>]; // BankAccount extends Asset -c55:p -> c58:p [arrowtail=empty,dir=back,weight=10]; +c55 -> c58 [arrowtail=empty,dir=back,weight=10]; // BankAccount extends InsurableItem -c57:p -> c58:p [arrowtail=empty,dir=back,weight=10]; +c57 -> c58 [arrowtail=empty,dir=back,weight=10]; // BankAccount extends InterestBearingItem -c56:p -> c58:p [arrowtail=empty,dir=back,weight=10]; +c56 -> c58 [arrowtail=empty,dir=back,weight=10]; // RealEstate extends Asset -c55:p -> c59:p [arrowtail=empty,dir=back,weight=10]; +c55 -> c59 [arrowtail=empty,dir=back,weight=10]; // RealEstate extends InsurableItem -c57:p -> c59:p [arrowtail=empty,dir=back,weight=10]; +c57 -> c59 [arrowtail=empty,dir=back,weight=10]; // Security extends Asset -c55:p -> c60:p [arrowtail=empty,dir=back,weight=10]; +c55 -> c60 [arrowtail=empty,dir=back,weight=10]; // Stock extends Security -c60:p -> c61:p [arrowtail=empty,dir=back,weight=10]; +c60 -> c61 [arrowtail=empty,dir=back,weight=10]; // Bond extends Security -c60:p -> c62:p [arrowtail=empty,dir=back,weight=10]; +c60 -> c62 [arrowtail=empty,dir=back,weight=10]; // CheckingAccount extends BankAccount -c58:p -> c63:p [arrowtail=empty,dir=back,weight=10]; +c58 -> c63 [arrowtail=empty,dir=back,weight=10]; // SavingsAccount extends BankAccount -c58:p -> c64:p [arrowtail=empty,dir=back,weight=10]; +c58 -> c64 [arrowtail=empty,dir=back,weight=10]; } diff --git a/testdata/dot-ref/java5.dot b/testdata/dot-ref/java5.dot index 4467209..18c40e7 100644 --- a/testdata/dot-ref/java5.dot +++ b/testdata/dot-ref/java5.dot @@ -7,12 +7,12 @@ digraph G { graph [fontnames="svg"] edge [fontname="Helvetica",fontsize=10,labelfontname="Helvetica",labelfontsize=10,color="black"]; -node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext]; +node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext,margin=0,width=0,height=0]; nodesep=0.25; ranksep=0.5; // Java5 -c78 [label=<
Java5
~ state : Java5.States
- specifiedPackages : Set<String>
+ printAll(args : String[])
>]; +c78 [label=<
Java5
~ state : Java5.States
- specifiedPackages : Set<String>
+ printAll(args : String[])
>]; // Java5.States -c79 [label=<
«enumeration»
States
start
dash
colon
space
open
w
close
>]; +c79 [label=<
«enumeration»
States
start
dash
colon
space
open
w
close
>]; } diff --git a/testdata/dot-ref/schema.dot b/testdata/dot-ref/schema.dot index 51a315f..6d97162 100644 --- a/testdata/dot-ref/schema.dot +++ b/testdata/dot-ref/schema.dot @@ -7,32 +7,32 @@ digraph G { graph [fontnames="svg"] edge [fontname="Helvetica",fontsize=10,labelfontname="Helvetica",labelfontsize=10,color="black"]; -node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext]; +node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext,margin=0,width=0,height=0]; nodesep=0.25; ranksep=0.5; // School -c103 [label=<
School
name : Name
address : String
phone : Number
addStudent()
removeStudent()
getStudent()
getAllStudents()
addDepartment()
removeDepartment()
getDepartment()
getAllDepartments()
>]; +c103 [label=<
School
name : Name
address : String
phone : Number
addStudent()
removeStudent()
getStudent()
getAllStudents()
addDepartment()
removeDepartment()
getDepartment()
getAllDepartments()
>]; // Department -c104 [label=<
Department
name : Name
addInstructor()
removeInstructor()
getInstructor()
getAllInstructors()
>]; +c104 [label=<
Department
name : Name
addInstructor()
removeInstructor()
getInstructor()
getAllInstructors()
>]; // Student -c105 [label=<
Student
name : Name
studentID : Number
>]; +c105 [label=<
Student
name : Name
studentID : Number
>]; // Course -c106 [label=<
Course
name : Name
courseID : Number
>]; +c106 [label=<
Course
name : Name
courseID : Number
>]; // Instructor -c107 [label=<
Instructor
name : Name
>]; +c107 [label=<
Instructor
name : Name
>]; // School has Student -c103:p -> c105:p [arrowhead=none,arrowtail=ediamond,dir=back,weight=4,taillabel="1..*", label="Member", headlabel="*"]; +c103 -> c105 [arrowhead=none,arrowtail=ediamond,dir=back,weight=4,taillabel="1..*", label="Member", headlabel="*"]; // School composed Department -c103:p -> c104:p [arrowhead=none,arrowtail=diamond,dir=back,weight=6,taillabel="1..*", label="Has", headlabel="1..*"]; +c103 -> c104 [arrowhead=none,arrowtail=diamond,dir=back,weight=6,taillabel="1..*", label="Has", headlabel="1..*"]; // Department assoc Course -c104:p -> c106:p [arrowhead=none,weight=2,taillabel="1..*", headlabel="1..*"]; +c104 -> c106 [arrowhead=none,weight=2,taillabel="1..*", headlabel="1..*"]; // Department assoc Instructor -c104:p -> c107:p [arrowhead=none,weight=2,taillabel="0..*", headlabel="0..1 chairperson"]; +c104 -> c107 [arrowhead=none,weight=2,taillabel="0..*", headlabel="0..1 chairperson"]; // Department has Instructor -c104:p -> c107:p [arrowhead=none,arrowtail=ediamond,dir=back,weight=4,taillabel="1..*", label="AssignedTo", headlabel="1..*"]; +c104 -> c107 [arrowhead=none,arrowtail=ediamond,dir=back,weight=4,taillabel="1..*", label="AssignedTo", headlabel="1..*"]; // Student assoc Course -c105:p -> c106:p [arrowhead=none,weight=2,taillabel="*", label="Attends", headlabel="*"]; +c105 -> c106 [arrowhead=none,weight=2,taillabel="*", label="Attends", headlabel="*"]; // Instructor assoc Course -c107:p -> c106:p [arrowhead=none,weight=2,taillabel="1..*", label="Teaches", headlabel="*"]; +c107 -> c106 [arrowhead=none,weight=2,taillabel="1..*", label="Teaches", headlabel="*"]; } diff --git a/testdata/dot-ref/strip.dot b/testdata/dot-ref/strip.dot index 82b17d5..a40df9c 100644 --- a/testdata/dot-ref/strip.dot +++ b/testdata/dot-ref/strip.dot @@ -7,12 +7,12 @@ digraph G { graph [fontnames="svg"] edge [fontname="Helvetica",fontsize=10,labelfontname="Helvetica",labelfontsize=10,color="black"]; -node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext]; +node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext,margin=0,width=0,height=0]; nodesep=0.25; ranksep=0.5; // Java5 -c109 [label=<
Java5
~ state : Java5.States
+ specifiedPackages : Set<String>
+ printAll(args : String[])
>]; +c109 [label=<
Java5
~ state : Java5.States
+ specifiedPackages : Set<String>
+ printAll(args : String[])
>]; // Java5.States -c110 [label=<
«enumeration»
States
start
dash
colon
space
open
w
close
>]; +c110 [label=<
«enumeration»
States
start
dash
colon
space
open
w
close
>]; } diff --git a/testdata/dot-ref/vis.dot b/testdata/dot-ref/vis.dot index 88f4e89..db7ad2b 100644 --- a/testdata/dot-ref/vis.dot +++ b/testdata/dot-ref/vis.dot @@ -7,10 +7,10 @@ digraph G { graph [fontnames="svg"] edge [fontname="Helvetica",fontsize=10,labelfontname="Helvetica",labelfontsize=10,color="black"]; -node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext]; +node [fontname="Helvetica",fontcolor="black",fontsize=10,shape=plaintext,margin=0,width=0,height=0]; nodesep=0.25; ranksep=0.5; // Toolbar -c120 [label=<
Toolbar
# currentSelection : Tool
# toolCount : Integer
+ pickItem(i : Integer)
+ addTool(t : Tool)
+ removeTool(i : Integer)
+ getTool() : Tool
# checkOrphans()
- compact()
>]; +c120 [label=<
Toolbar
# currentSelection : Tool
# toolCount : Integer
+ pickItem(i : Integer)
+ addTool(t : Tool)
+ removeTool(i : Integer)
+ getTool() : Tool
# checkOrphans()
- compact()
>]; }