1#!/usr/local/bin/dot
2#
3# Class diagram
4# Generated by UMLGraph version R5_6-9-g37cd34 (http://www.umlgraph.org/)
5#
6
7digraph G {
8	edge [fontname="Helvetica",fontsize=10,labelfontname="Helvetica",labelfontsize=10];
9	node [fontname="Helvetica",fontsize=10,shape=plaintext];
10	nodesep=0.25;
11	ranksep=0.5;
12	// gr.spinellis.basic.invoice.InvoiceItem
13	c317 [label=<<table title="gr.spinellis.basic.invoice.InvoiceItem" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p"><tr><td><table border="0" cellspacing="0" cellpadding="1"><tr><td align="center" balign="center"> InvoiceItem </td></tr></table></td></tr><tr><td><table border="0" cellspacing="0" cellpadding="1"><tr><td align="left" balign="left">  product : Product </td></tr><tr><td align="left" balign="left">  quantity : int </td></tr></table></td></tr><tr><td><table border="0" cellspacing="0" cellpadding="1"><tr><td align="left" balign="left">  </td></tr></table></td></tr></table>>, URL="null", fontname="Helvetica", fontcolor="black", fontsize=10.0];
14	// gr.spinellis.basic.invoice.Invoice
15	c318 [label=<<table title="gr.spinellis.basic.invoice.Invoice" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p"><tr><td><table border="0" cellspacing="0" cellpadding="1"><tr><td align="center" balign="center"> Invoice </td></tr></table></td></tr><tr><td><table border="0" cellspacing="0" cellpadding="1"><tr><td align="left" balign="left">  total : double </td></tr><tr><td align="left" balign="left">  items : InvoiceItem[] </td></tr><tr><td align="left" balign="left">  customer : Customer </td></tr></table></td></tr><tr><td><table border="0" cellspacing="0" cellpadding="1"><tr><td align="left" balign="left">  addItem(p : Product, quantity : int) </td></tr></table></td></tr></table>>, URL="null", fontname="Helvetica", fontcolor="black", fontsize=10.0];
16	// gr.spinellis.basic.invoice.Customer
17	c319 [label=<<table title="gr.spinellis.basic.invoice.Customer" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p"><tr><td><table border="0" cellspacing="0" cellpadding="1"><tr><td align="center" balign="center"> Customer </td></tr></table></td></tr><tr><td><table border="0" cellspacing="0" cellpadding="1"><tr><td align="left" balign="left">  name : String </td></tr></table></td></tr><tr><td><table border="0" cellspacing="0" cellpadding="1"><tr><td align="left" balign="left">  </td></tr></table></td></tr></table>>, URL="null", fontname="Helvetica", fontcolor="black", fontsize=10.0];
18	// gr.spinellis.basic.product.Product
19	c320 [label=<<table title="gr.spinellis.basic.product.Product" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p"><tr><td><table border="0" cellspacing="0" cellpadding="1"><tr><td align="center" balign="center"> Product </td></tr></table></td></tr><tr><td><table border="0" cellspacing="0" cellpadding="1"><tr><td align="left" balign="left">  name : String </td></tr><tr><td align="left" balign="left">  stock : int </td></tr><tr><td align="left" balign="left">  price : double </td></tr><tr><td align="left" balign="left">  category : Category </td></tr></table></td></tr><tr><td><table border="0" cellspacing="0" cellpadding="1"><tr><td align="left" balign="left">  </td></tr></table></td></tr></table>>, URL="null", fontname="Helvetica", fontcolor="black", fontsize=10.0];
20	// gr.spinellis.basic.product.Category
21	c321 [label=<<table title="gr.spinellis.basic.product.Category" border="0" cellborder="1" cellspacing="0" cellpadding="2" port="p"><tr><td><table border="0" cellspacing="0" cellpadding="1"><tr><td align="center" balign="center"> Category </td></tr></table></td></tr><tr><td><table border="0" cellspacing="0" cellpadding="1"><tr><td align="left" balign="left">  name : String </td></tr><tr><td align="left" balign="left">  products : List&lt;&gt; </td></tr></table></td></tr><tr><td><table border="0" cellspacing="0" cellpadding="1"><tr><td align="left" balign="left">  </td></tr></table></td></tr></table>>, URL="null", fontname="Helvetica", fontcolor="black", fontsize=10.0];
22	// gr.spinellis.basic.invoice.InvoiceItem ASSOC gr.spinellis.basic.product.Product
23	c317:p -> c320:p [taillabel="*", label="", headlabel="1", fontname="Helvetica", fontcolor="black", fontsize=10.0, color="black", arrowhead=none];
24	// gr.spinellis.basic.invoice.Invoice ASSOC gr.spinellis.basic.invoice.Customer
25	c318:p -> c319:p [taillabel="*", label="", headlabel="1", fontname="Helvetica", fontcolor="black", fontsize=10.0, color="black", arrowhead=none];
26	// gr.spinellis.basic.invoice.Invoice COMPOSED gr.spinellis.basic.invoice.InvoiceItem
27	c318:p -> c317:p [taillabel="1", label="", headlabel="*", fontname="Helvetica", fontcolor="black", fontsize=10.0, color="black", arrowhead=none, arrowtail=diamond, dir=both];
28	// gr.spinellis.basic.product.Product ASSOC gr.spinellis.basic.product.Category
29	c320:p -> c321:p [taillabel="*", label="", headlabel="1", fontname="Helvetica", fontcolor="black", fontsize=10.0, color="black", arrowhead=none];
30}
31
32