1 // Author: Vadim Nasardinov 2 // Author: Andrea Aime 3 4 import java.util.List; 5 import java.util.Map; 6 7 /** 8 * @assoc "1..1" - "0..n" Adapter 9 * @assoc "" - "0..n" ObjectType 10 * @assoc "" - "0..n" ObjectMap 11 * @assoc "" - "0..n" Table 12 * @assoc "" - "0..n" DataOperation 13 **/ 14 class Root { 15 private Map m_adapters; 16 private List m_types; 17 private List m_maps; 18 private List m_tables; 19 private List m_ops; 20 getAdapter(Class klass)21 public Adapter getAdapter(Class klass) {} 22 } 23 24 class Adapter { getRoot()25 public Root getRoot(); 26 } 27 28 abstract class Element { getRoot()29 Root getRoot() {} 30 } 31 32 class ObjectType extends Element {} 33 34 /** 35 * @has "1..1" - "1..1" ObjectType 36 **/ 37 class ObjectMap extends Element { 38 private ObjectType m_type; 39 } 40 41 class Table extends Element {} 42 43 class DataOperation extends Element {} 44 45 /** 46 * @hidden 47 * @opt nodefontname luxisr 48 * @opt nodefontabstractname luxisri 49 * @opt edgefontname luxisr 50 * @opt nodefontsize 8 51 * @opt edgefontsize 8 52 * @opt nodefillcolor LemonChiffon 53 */ 54 class UMLOptions {} 55 56 /** 57 * @view 58 * @opt attributes 59 * @opt operations 60 */ 61 class DetailedView {} 62 63 /** 64 * @view 65 */ 66 class Overview {} 67