aboutsummaryrefslogtreecommitdiff
path: root/docs/u-fund.drawio.xml
blob: 97c87568fec84a9e26e3f9c6ddda16b93a72144b (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
<?xml version="1.0" encoding="UTF-8"?>
<mxfile host="app.diagrams.net" agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36" version="26.0.14">
  <diagram id="C5RBs43oDa-KdzZeNtuy" name="Page-1">
    <mxGraphModel dx="1313" dy="696" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="827" pageHeight="1169" math="0" shadow="0">
      <root>
        <mxCell id="WIyWlLk6GJQsqaUBKTNV-0" />
        <mxCell id="WIyWlLk6GJQsqaUBKTNV-1" parent="WIyWlLk6GJQsqaUBKTNV-0" />
        <mxCell id="miN-AHw2UIRGXhX9ftvc-20" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" parent="WIyWlLk6GJQsqaUBKTNV-1" source="zkfFHV4jXpPFQw0GAbJ--0" target="zkfFHV4jXpPFQw0GAbJ--13" edge="1">
          <mxGeometry relative="1" as="geometry">
            <Array as="points" />
          </mxGeometry>
        </mxCell>
        <mxCell id="zkfFHV4jXpPFQw0GAbJ--0" value="Need" style="swimlane;fontStyle=2;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeLast=0;collapsible=1;marginBottom=0;rounded=0;shadow=0;strokeWidth=1;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
          <mxGeometry x="212.5" y="40" width="230" height="344" as="geometry">
            <mxRectangle x="230" y="140" width="160" height="26" as="alternateBounds" />
          </mxGeometry>
        </mxCell>
        <mxCell id="zkfFHV4jXpPFQw0GAbJ--1" value="- name : String&#xa;- attributes: String[]&#xa;- type: GoalType&#xa;- max: double&#xa;- current: double" style="text;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;" parent="zkfFHV4jXpPFQw0GAbJ--0" vertex="1">
          <mxGeometry y="26" width="230" height="84" as="geometry" />
        </mxCell>
        <mxCell id="zkfFHV4jXpPFQw0GAbJ--4" value="" style="line;html=1;strokeWidth=1;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;labelPosition=right;points=[];portConstraint=eastwest;" parent="zkfFHV4jXpPFQw0GAbJ--0" vertex="1">
          <mxGeometry y="110" width="230" height="4" as="geometry" />
        </mxCell>
        <mxCell id="miN-AHw2UIRGXhX9ftvc-4" value="+Need (name: String, max: double,&amp;nbsp;&lt;div&gt;type: GoalType): void&lt;div&gt;&lt;span style=&quot;&quot;&gt;+getName(): name&lt;/span&gt;&lt;/div&gt;&lt;div&gt;+getAttributes(): attributes&lt;/div&gt;&lt;div&gt;+getType(): type&lt;/div&gt;&lt;div&gt;+getMax(): max&lt;/div&gt;&lt;div&gt;+getCurrent(): current&lt;/div&gt;&lt;div&gt;+setName(name: String): void&lt;/div&gt;&lt;div&gt;+setAttributes(attributes: String[]): void&lt;/div&gt;&lt;div&gt;+addAttribute(attribute: String)&lt;/div&gt;&lt;div&gt;-removeAttribute(attribute: String)&lt;/div&gt;&lt;div&gt;+setMax(max: double): void&lt;/div&gt;&lt;div&gt;+setCurrent(max: double): void&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;/div&gt;" style="text;html=1;align=left;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="zkfFHV4jXpPFQw0GAbJ--0" vertex="1">
          <mxGeometry y="114" width="230" height="230" as="geometry" />
        </mxCell>
        <mxCell id="zkfFHV4jXpPFQw0GAbJ--13" value="&lt;&lt;enum&gt;&gt;&#xa;GoalType" style="swimlane;fontStyle=0;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=40;horizontalStack=0;resizeParent=1;resizeLast=0;collapsible=1;marginBottom=0;rounded=0;shadow=0;strokeWidth=1;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
          <mxGeometry x="247.5" y="544" width="160" height="90" as="geometry">
            <mxRectangle x="340" y="380" width="170" height="26" as="alternateBounds" />
          </mxGeometry>
        </mxCell>
        <mxCell id="miN-AHw2UIRGXhX9ftvc-0" value="+&lt;i&gt;MONETARY&lt;/i&gt;&lt;div&gt;&lt;i&gt;+PHYSICAL&lt;/i&gt;&lt;/div&gt;" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="zkfFHV4jXpPFQw0GAbJ--13" vertex="1">
          <mxGeometry y="40" width="160" height="40" as="geometry" />
        </mxCell>
        <mxCell id="miN-AHw2UIRGXhX9ftvc-43" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;" parent="WIyWlLk6GJQsqaUBKTNV-1" source="miN-AHw2UIRGXhX9ftvc-15" target="miN-AHw2UIRGXhX9ftvc-4" edge="1">
          <mxGeometry relative="1" as="geometry" />
        </mxCell>
        <mxCell id="miN-AHw2UIRGXhX9ftvc-15" value="&lt;&lt;static&gt;&gt;&#xa;NeedsCupboard" style="swimlane;fontStyle=2;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=40;horizontalStack=0;resizeParent=1;resizeLast=0;collapsible=1;marginBottom=0;rounded=0;shadow=0;strokeWidth=1;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
          <mxGeometry x="475" y="160" width="240" height="218" as="geometry">
            <mxRectangle x="230" y="140" width="160" height="26" as="alternateBounds" />
          </mxGeometry>
        </mxCell>
        <mxCell id="miN-AHw2UIRGXhX9ftvc-16" value="- needs : ArrayList&lt;Need&gt;&#xa;" style="text;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;" parent="miN-AHw2UIRGXhX9ftvc-15" vertex="1">
          <mxGeometry y="40" width="240" height="30" as="geometry" />
        </mxCell>
        <mxCell id="miN-AHw2UIRGXhX9ftvc-17" value="" style="line;html=1;strokeWidth=1;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;labelPosition=right;points=[];portConstraint=eastwest;" parent="miN-AHw2UIRGXhX9ftvc-15" vertex="1">
          <mxGeometry y="70" width="240" height="18" as="geometry" />
        </mxCell>
        <mxCell id="miN-AHw2UIRGXhX9ftvc-18" value="&lt;div&gt;+getNeeds(): needs&lt;/div&gt;&lt;div&gt;+setNeeds(needs: ArrayList&amp;lt;Need): void&lt;/div&gt;&lt;div&gt;&lt;div&gt;+createNeed(name: String, max: double,&amp;nbsp;&lt;/div&gt;&lt;div&gt;type: GoalType): void&lt;/div&gt;&lt;div&gt;+removeNeed(need: Need): void&lt;/div&gt;&lt;div&gt;+updateNeed(name: String, need: Need)&lt;/div&gt;&lt;div&gt;+deleteNeed(name: String)&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&lt;/div&gt;" style="text;html=1;align=left;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="miN-AHw2UIRGXhX9ftvc-15" vertex="1">
          <mxGeometry y="88" width="240" height="130" as="geometry" />
        </mxCell>
        <mxCell id="miN-AHw2UIRGXhX9ftvc-42" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=1;entryDx=0;entryDy=0;" parent="WIyWlLk6GJQsqaUBKTNV-1" source="miN-AHw2UIRGXhX9ftvc-27" target="miN-AHw2UIRGXhX9ftvc-15" edge="1">
          <mxGeometry relative="1" as="geometry" />
        </mxCell>
        <mxCell id="miN-AHw2UIRGXhX9ftvc-27" value="CupboardController&#xa;" style="swimlane;fontStyle=2;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeLast=0;collapsible=1;marginBottom=0;rounded=0;shadow=0;strokeWidth=1;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
          <mxGeometry x="455" y="480" width="280" height="164" as="geometry">
            <mxRectangle x="230" y="140" width="160" height="26" as="alternateBounds" />
          </mxGeometry>
        </mxCell>
        <mxCell id="miN-AHw2UIRGXhX9ftvc-28" value="- dao: CupboardDAO&#xa;- cupboard: NeedsCupboard" style="text;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;" parent="miN-AHw2UIRGXhX9ftvc-27" vertex="1">
          <mxGeometry y="26" width="280" height="34" as="geometry" />
        </mxCell>
        <mxCell id="miN-AHw2UIRGXhX9ftvc-29" value="" style="line;html=1;strokeWidth=1;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;labelPosition=right;points=[];portConstraint=eastwest;" parent="miN-AHw2UIRGXhX9ftvc-27" vertex="1">
          <mxGeometry y="60" width="280" height="4" as="geometry" />
        </mxCell>
        <mxCell id="miN-AHw2UIRGXhX9ftvc-30" value="+CupboardController(dao: CupboardDAO): void&lt;div&gt;+createNeed(name: String, max: double,&amp;nbsp;&lt;/div&gt;&lt;div&gt;type: GoalType): void&lt;/div&gt;&lt;div&gt;+removeNeed(need: Need): void&lt;/div&gt;&lt;div&gt;+updateNeed(name: String, need: Need)&lt;/div&gt;&lt;div&gt;+deleteNeed(name: String)&amp;nbsp;&lt;/div&gt;" style="text;html=1;align=left;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="miN-AHw2UIRGXhX9ftvc-27" vertex="1">
          <mxGeometry y="64" width="280" height="100" as="geometry" />
        </mxCell>
        <mxCell id="miN-AHw2UIRGXhX9ftvc-31" value="&lt;&lt;interface&gt;&gt;&#xa;CupboardDAO" style="swimlane;fontStyle=2;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=40;horizontalStack=0;resizeParent=1;resizeLast=0;collapsible=1;marginBottom=0;rounded=0;shadow=0;strokeWidth=1;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
          <mxGeometry x="790" y="480" width="230" height="154" as="geometry">
            <mxRectangle x="230" y="140" width="160" height="26" as="alternateBounds" />
          </mxGeometry>
        </mxCell>
        <mxCell id="miN-AHw2UIRGXhX9ftvc-32" value="- needs: ArrayList&lt;Need&gt;" style="text;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;" parent="miN-AHw2UIRGXhX9ftvc-31" vertex="1">
          <mxGeometry y="40" width="230" height="34" as="geometry" />
        </mxCell>
        <mxCell id="miN-AHw2UIRGXhX9ftvc-33" value="" style="line;html=1;strokeWidth=1;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;labelPosition=right;points=[];portConstraint=eastwest;" parent="miN-AHw2UIRGXhX9ftvc-31" vertex="1">
          <mxGeometry y="74" width="230" height="4" as="geometry" />
        </mxCell>
        <mxCell id="miN-AHw2UIRGXhX9ftvc-34" value="+CupboardController(): void&lt;div&gt;&lt;br&gt;&lt;/div&gt;" style="text;html=1;align=left;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="miN-AHw2UIRGXhX9ftvc-31" vertex="1">
          <mxGeometry y="78" width="230" height="40" as="geometry" />
        </mxCell>
        <mxCell id="miN-AHw2UIRGXhX9ftvc-39" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=1;entryDx=0;entryDy=0;endArrow=block;endFill=0;" parent="WIyWlLk6GJQsqaUBKTNV-1" source="miN-AHw2UIRGXhX9ftvc-35" target="miN-AHw2UIRGXhX9ftvc-31" edge="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="900" y="630" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="miN-AHw2UIRGXhX9ftvc-35" value="CupboardFileDAO" style="swimlane;fontStyle=2;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=30;horizontalStack=0;resizeParent=1;resizeLast=0;collapsible=1;marginBottom=0;rounded=0;shadow=0;strokeWidth=1;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
          <mxGeometry x="780" y="680" width="250" height="154" as="geometry">
            <mxRectangle x="230" y="140" width="160" height="26" as="alternateBounds" />
          </mxGeometry>
        </mxCell>
        <mxCell id="miN-AHw2UIRGXhX9ftvc-36" value="- needs: ArrayList&lt;Need&gt;&#xa;-filepath: String" style="text;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;" parent="miN-AHw2UIRGXhX9ftvc-35" vertex="1">
          <mxGeometry y="30" width="250" height="34" as="geometry" />
        </mxCell>
        <mxCell id="miN-AHw2UIRGXhX9ftvc-37" value="" style="line;html=1;strokeWidth=1;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;labelPosition=right;points=[];portConstraint=eastwest;" parent="miN-AHw2UIRGXhX9ftvc-35" vertex="1">
          <mxGeometry y="64" width="250" height="4" as="geometry" />
        </mxCell>
        <mxCell id="miN-AHw2UIRGXhX9ftvc-38" value="+CupboardController(filepath: String): void&lt;div&gt;&lt;br&gt;&lt;/div&gt;" style="text;html=1;align=left;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="miN-AHw2UIRGXhX9ftvc-35" vertex="1">
          <mxGeometry y="68" width="250" height="40" as="geometry" />
        </mxCell>
        <mxCell id="miN-AHw2UIRGXhX9ftvc-40" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.003;entryY=0.096;entryDx=0;entryDy=0;entryPerimeter=0;" parent="WIyWlLk6GJQsqaUBKTNV-1" source="miN-AHw2UIRGXhX9ftvc-27" target="miN-AHw2UIRGXhX9ftvc-34" edge="1">
          <mxGeometry relative="1" as="geometry" />
        </mxCell>
      </root>
    </mxGraphModel>
  </diagram>
</mxfile>