diff options
author | Akash Keshav <112591754+domesticchores@users.noreply.github.com> | 2025-02-16 17:04:33 -0500 |
---|---|---|
committer | Akash Keshav <112591754+domesticchores@users.noreply.github.com> | 2025-02-16 17:04:33 -0500 |
commit | ae0bff7e12edbd6f4e76cf32468f5d5607e770a6 (patch) | |
tree | 351461ddfb35d4b0f973d9eba223a660a5d50398 /docs/architecture-tiers-and-layers.drawio | |
parent | 781da6af80a6a1391bfe1d6445f6d59a28362c72 (diff) | |
download | JellySolutions-ae0bff7e12edbd6f4e76cf32468f5d5607e770a6.tar.gz JellySolutions-ae0bff7e12edbd6f4e76cf32468f5d5607e770a6.tar.bz2 JellySolutions-ae0bff7e12edbd6f4e76cf32468f5d5607e770a6.zip |
added design doc and relevant diagrams. -ak
Diffstat (limited to 'docs/architecture-tiers-and-layers.drawio')
-rw-r--r-- | docs/architecture-tiers-and-layers.drawio | 235 |
1 files changed, 235 insertions, 0 deletions
diff --git a/docs/architecture-tiers-and-layers.drawio b/docs/architecture-tiers-and-layers.drawio new file mode 100644 index 0000000..e3fb576 --- /dev/null +++ b/docs/architecture-tiers-and-layers.drawio @@ -0,0 +1,235 @@ +<mxfile host="app.diagrams.net" agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:135.0) Gecko/20100101 Firefox/135.0" version="26.0.13"> + <diagram name="Page-1" id="P8hgUCnVgUD2r0shnHkA"> + <mxGraphModel dx="1105" dy="566" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="850" pageHeight="1100" math="0" shadow="0"> + <root> + <mxCell id="0" /> + <mxCell id="1" parent="0" /> + <mxCell id="Ork7YycwdDH3GpRj4XOS-1" value="View" style="rounded=0;whiteSpace=wrap;html=1;verticalAlign=top;" vertex="1" parent="1"> + <mxGeometry x="125" y="220" width="120" height="120" as="geometry" /> + </mxCell> + <mxCell id="Ork7YycwdDH3GpRj4XOS-3" value="ViewModel" style="rounded=0;whiteSpace=wrap;html=1;verticalAlign=top;" vertex="1" parent="1"> + <mxGeometry x="285" y="220" width="240" height="120" as="geometry" /> + </mxCell> + <mxCell id="Ork7YycwdDH3GpRj4XOS-4" value="Model" style="rounded=0;whiteSpace=wrap;html=1;verticalAlign=top;" vertex="1" parent="1"> + <mxGeometry x="565" y="220" width="355" height="120" as="geometry" /> + </mxCell> + <mxCell id="Ork7YycwdDH3GpRj4XOS-5" value="Web Interface" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#ffe6cc;strokeColor=#d79b00;" vertex="1" parent="1"> + <mxGeometry x="135" y="270" width="100" height="50" as="geometry" /> + </mxCell> + <mxCell id="Ork7YycwdDH3GpRj4XOS-6" value="User" style="shape=umlActor;verticalLabelPosition=bottom;verticalAlign=top;html=1;outlineConnect=0;fillColor=#ffe6cc;strokeColor=#d79b00;" vertex="1" parent="1"> + <mxGeometry x="65" y="250" width="30" height="60" as="geometry" /> + </mxCell> + <mxCell id="Ork7YycwdDH3GpRj4XOS-7" value="<div>REST API</div><div>(CupboardController)</div>" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#ffe6cc;strokeColor=#d79b00;" vertex="1" parent="1"> + <mxGeometry x="300" y="270" width="115" height="50" as="geometry" /> + </mxCell> + <mxCell id="Ork7YycwdDH3GpRj4XOS-8" value="<div>Service</div><div>(TBD)</div>" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#ffe6cc;strokeColor=#d79b00;dashed=1;dashPattern=8 8;" vertex="1" parent="1"> + <mxGeometry x="435" y="270" width="80" height="50" as="geometry" /> + </mxCell> + <mxCell id="Ork7YycwdDH3GpRj4XOS-9" value="" style="endArrow=classic;html=1;rounded=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;fillColor=#ffe6cc;strokeColor=#d79b00;" edge="1" parent="1" target="Ork7YycwdDH3GpRj4XOS-5"> + <mxGeometry width="50" height="50" relative="1" as="geometry"> + <mxPoint x="105" y="295" as="sourcePoint" /> + <mxPoint x="415" y="370" as="targetPoint" /> + </mxGeometry> + </mxCell> + <mxCell id="Ork7YycwdDH3GpRj4XOS-10" value="" style="endArrow=classic;html=1;rounded=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;fillColor=#ffe6cc;strokeColor=#d79b00;" edge="1" parent="1" target="Ork7YycwdDH3GpRj4XOS-7"> + <mxGeometry width="50" height="50" relative="1" as="geometry"> + <mxPoint x="235" y="294.78" as="sourcePoint" /> + <mxPoint x="265" y="294.78" as="targetPoint" /> + </mxGeometry> + </mxCell> + <mxCell id="Ork7YycwdDH3GpRj4XOS-11" value="" style="endArrow=classic;html=1;rounded=0;fillColor=#ffe6cc;strokeColor=#d79b00;" edge="1" parent="1"> + <mxGeometry width="50" height="50" relative="1" as="geometry"> + <mxPoint x="415" y="294.78" as="sourcePoint" /> + <mxPoint x="435" y="295" as="targetPoint" /> + </mxGeometry> + </mxCell> + <mxCell id="Ork7YycwdDH3GpRj4XOS-12" value="" style="endArrow=classic;html=1;rounded=0;fillColor=#ffe6cc;strokeColor=#d79b00;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" target="Ork7YycwdDH3GpRj4XOS-13"> + <mxGeometry width="50" height="50" relative="1" as="geometry"> + <mxPoint x="515" y="294.78" as="sourcePoint" /> + <mxPoint x="555" y="295" as="targetPoint" /> + </mxGeometry> + </mxCell> + <mxCell id="Ork7YycwdDH3GpRj4XOS-13" value="Model" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#ffe6cc;strokeColor=#d79b00;" vertex="1" parent="1"> + <mxGeometry x="575" y="270" width="100" height="50" as="geometry" /> + </mxCell> + <mxCell id="Ork7YycwdDH3GpRj4XOS-14" value="Persistence" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#ffe6cc;strokeColor=#d79b00;" vertex="1" parent="1"> + <mxGeometry x="695" y="270" width="100" height="50" as="geometry" /> + </mxCell> + <mxCell id="Ork7YycwdDH3GpRj4XOS-15" value="" style="endArrow=classic;html=1;rounded=0;fillColor=#ffe6cc;strokeColor=#d79b00;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="Ork7YycwdDH3GpRj4XOS-13" target="Ork7YycwdDH3GpRj4XOS-14"> + <mxGeometry width="50" height="50" relative="1" as="geometry"> + <mxPoint x="675" y="294.78" as="sourcePoint" /> + <mxPoint x="695" y="295" as="targetPoint" /> + </mxGeometry> + </mxCell> + <mxCell id="Ork7YycwdDH3GpRj4XOS-17" value="Storage" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#ffe6cc;strokeColor=#d79b00;" vertex="1" parent="1"> + <mxGeometry x="980" y="270" width="100" height="50" as="geometry" /> + </mxCell> + <mxCell id="Ork7YycwdDH3GpRj4XOS-19" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;fillColor=#dae8fc;strokeColor=#6c8ebf;" edge="1" parent="1" source="Ork7YycwdDH3GpRj4XOS-5"> + <mxGeometry width="50" height="50" relative="1" as="geometry"> + <mxPoint x="195" y="440" as="sourcePoint" /> + <mxPoint x="185" y="380" as="targetPoint" /> + </mxGeometry> + </mxCell> + <mxCell id="Ork7YycwdDH3GpRj4XOS-20" value="<div>Angular</div>" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#f8cecc;strokeColor=#b85450;" vertex="1" parent="1"> + <mxGeometry x="305" y="100" width="100" height="20" as="geometry" /> + </mxCell> + <mxCell id="Ork7YycwdDH3GpRj4XOS-21" value="Frameworks" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1"> + <mxGeometry x="235" y="125" width="60" height="30" as="geometry" /> + </mxCell> + <mxCell id="Ork7YycwdDH3GpRj4XOS-22" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;fillColor=#dae8fc;strokeColor=#6c8ebf;" edge="1" parent="1"> + <mxGeometry width="50" height="50" relative="1" as="geometry"> + <mxPoint x="357.19" y="320" as="sourcePoint" /> + <mxPoint x="357" y="380" as="targetPoint" /> + </mxGeometry> + </mxCell> + <mxCell id="Ork7YycwdDH3GpRj4XOS-26" value="Any Modern Browser" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;" vertex="1" parent="1"> + <mxGeometry x="530" y="120" width="100" height="40" as="geometry" /> + </mxCell> + <mxCell id="Ork7YycwdDH3GpRj4XOS-27" value="Platform" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1"> + <mxGeometry x="460" y="125" width="60" height="30" as="geometry" /> + </mxCell> + <mxCell id="Ork7YycwdDH3GpRj4XOS-32" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;fillColor=#dae8fc;strokeColor=#6c8ebf;" edge="1" parent="1"> + <mxGeometry width="50" height="50" relative="1" as="geometry"> + <mxPoint x="1029.5700000000002" y="320" as="sourcePoint" /> + <mxPoint x="1030" y="380" as="targetPoint" /> + </mxGeometry> + </mxCell> + <mxCell id="Ork7YycwdDH3GpRj4XOS-33" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;fillColor=#dae8fc;strokeColor=#6c8ebf;" edge="1" parent="1"> + <mxGeometry width="50" height="50" relative="1" as="geometry"> + <mxPoint x="474.76" y="320" as="sourcePoint" /> + <mxPoint x="474.57" y="380" as="targetPoint" /> + </mxGeometry> + </mxCell> + <mxCell id="Ork7YycwdDH3GpRj4XOS-34" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;fillColor=#dae8fc;strokeColor=#6c8ebf;" edge="1" parent="1"> + <mxGeometry width="50" height="50" relative="1" as="geometry"> + <mxPoint x="624.76" y="320" as="sourcePoint" /> + <mxPoint x="624.5699999999999" y="380" as="targetPoint" /> + </mxGeometry> + </mxCell> + <mxCell id="Ork7YycwdDH3GpRj4XOS-35" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;fillColor=#dae8fc;strokeColor=#6c8ebf;" edge="1" parent="1"> + <mxGeometry width="50" height="50" relative="1" as="geometry"> + <mxPoint x="744.76" y="320" as="sourcePoint" /> + <mxPoint x="744.5699999999999" y="380" as="targetPoint" /> + </mxGeometry> + </mxCell> + <mxCell id="Ork7YycwdDH3GpRj4XOS-36" value="Usage" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1"> + <mxGeometry x="50" y="390" width="60" height="30" as="geometry" /> + </mxCell> + <mxCell id="Ork7YycwdDH3GpRj4XOS-38" value="TBD" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#f8cecc;strokeColor=#b85450;" vertex="1" parent="1"> + <mxGeometry x="135" y="380" width="100" height="40" as="geometry" /> + </mxCell> + <mxCell id="Ork7YycwdDH3GpRj4XOS-39" value="SpringBoot" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#b0e3e6;strokeColor=#0e8088;" vertex="1" parent="1"> + <mxGeometry x="307.5" y="380" width="100" height="40" as="geometry" /> + </mxCell> + <mxCell id="Ork7YycwdDH3GpRj4XOS-41" value="REST API" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#b0e3e6;strokeColor=#0e8088;" vertex="1" parent="1"> + <mxGeometry x="305" y="120" width="100" height="20" as="geometry" /> + </mxCell> + <mxCell id="Ork7YycwdDH3GpRj4XOS-43" value="Java" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#fad7ac;strokeColor=#b46504;" vertex="1" parent="1"> + <mxGeometry x="305" y="140" width="100" height="20" as="geometry" /> + </mxCell> + <mxCell id="Ork7YycwdDH3GpRj4XOS-44" value="TypeScript" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#e1d5e7;strokeColor=#9673a6;" vertex="1" parent="1"> + <mxGeometry x="305" y="160" width="100" height="20" as="geometry" /> + </mxCell> + <mxCell id="Ork7YycwdDH3GpRj4XOS-45" value="Any Modern Operating System" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;" vertex="1" parent="1"> + <mxGeometry x="740" y="120" width="100" height="40" as="geometry" /> + </mxCell> + <mxCell id="Ork7YycwdDH3GpRj4XOS-46" value="OS" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1"> + <mxGeometry x="670" y="125" width="60" height="30" as="geometry" /> + </mxCell> + <mxCell id="Ork7YycwdDH3GpRj4XOS-48" value="Need" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#fad7ac;strokeColor=#b46504;" vertex="1" parent="1"> + <mxGeometry x="575" y="380" width="100" height="20" as="geometry" /> + </mxCell> + <mxCell id="Ork7YycwdDH3GpRj4XOS-56" value="DAO" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#fad7ac;strokeColor=#b46504;" vertex="1" parent="1"> + <mxGeometry x="695" y="380" width="100" height="20" as="geometry" /> + </mxCell> + <mxCell id="Ork7YycwdDH3GpRj4XOS-58" value="FileDAO" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#fad7ac;strokeColor=#b46504;" vertex="1" parent="1"> + <mxGeometry x="695" y="400" width="100" height="20" as="geometry" /> + </mxCell> + <mxCell id="Ork7YycwdDH3GpRj4XOS-61" value="" style="endArrow=classic;html=1;rounded=0;fillColor=#ffe6cc;strokeColor=#d79b00;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="Ork7YycwdDH3GpRj4XOS-14" target="Ork7YycwdDH3GpRj4XOS-60"> + <mxGeometry width="50" height="50" relative="1" as="geometry"> + <mxPoint x="795" y="295" as="sourcePoint" /> + <mxPoint x="1010" y="295" as="targetPoint" /> + </mxGeometry> + </mxCell> + <mxCell id="Ork7YycwdDH3GpRj4XOS-60" value="Controller" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#ffe6cc;strokeColor=#d79b00;" vertex="1" parent="1"> + <mxGeometry x="810" y="270" width="100" height="50" as="geometry" /> + </mxCell> + <mxCell id="Ork7YycwdDH3GpRj4XOS-63" value="" style="endArrow=classic;html=1;rounded=0;fillColor=#ffe6cc;strokeColor=#d79b00;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="Ork7YycwdDH3GpRj4XOS-60" target="Ork7YycwdDH3GpRj4XOS-17"> + <mxGeometry width="50" height="50" relative="1" as="geometry"> + <mxPoint x="910" y="295" as="sourcePoint" /> + <mxPoint x="1010" y="295" as="targetPoint" /> + </mxGeometry> + </mxCell> + <mxCell id="Ork7YycwdDH3GpRj4XOS-18" value="<div>File</div><div>I/O</div>" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1"> + <mxGeometry x="920" y="280" width="60" height="30" as="geometry" /> + </mxCell> + <mxCell id="Ork7YycwdDH3GpRj4XOS-69" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;fillColor=#dae8fc;strokeColor=#6c8ebf;" edge="1" parent="1"> + <mxGeometry width="50" height="50" relative="1" as="geometry"> + <mxPoint x="859.76" y="320" as="sourcePoint" /> + <mxPoint x="859.5699999999999" y="380" as="targetPoint" /> + </mxGeometry> + </mxCell> + <mxCell id="Ork7YycwdDH3GpRj4XOS-70" value="<div>Cupboard</div><div>Controller</div>" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#fad7ac;strokeColor=#b46504;" vertex="1" parent="1"> + <mxGeometry x="810" y="380" width="100" height="30" as="geometry" /> + </mxCell> + <mxCell id="Ork7YycwdDH3GpRj4XOS-72" value="TBD" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#f8cecc;strokeColor=#b85450;" vertex="1" parent="1"> + <mxGeometry x="435" y="380" width="80" height="40" as="geometry" /> + </mxCell> + <mxCell id="Ork7YycwdDH3GpRj4XOS-73" value="<div>Remote</div><div>Storage Location</div>" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#f5f5f5;fontColor=#333333;strokeColor=#666666;" vertex="1" parent="1"> + <mxGeometry x="980" y="380" width="100" height="30" as="geometry" /> + </mxCell> + <mxCell id="Ork7YycwdDH3GpRj4XOS-74" value="Any Modern Browser" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;" vertex="1" parent="1"> + <mxGeometry x="135" y="480" width="100" height="40" as="geometry" /> + </mxCell> + <mxCell id="Ork7YycwdDH3GpRj4XOS-76" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;fillColor=#dae8fc;strokeColor=#6c8ebf;" edge="1" parent="1"> + <mxGeometry width="50" height="50" relative="1" as="geometry"> + <mxPoint x="184.47" y="420" as="sourcePoint" /> + <mxPoint x="184.47" y="480" as="targetPoint" /> + </mxGeometry> + </mxCell> + <mxCell id="Ork7YycwdDH3GpRj4XOS-77" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;fillColor=#dae8fc;strokeColor=#6c8ebf;" edge="1" parent="1"> + <mxGeometry width="50" height="50" relative="1" as="geometry"> + <mxPoint x="356.19" y="420" as="sourcePoint" /> + <mxPoint x="356" y="480" as="targetPoint" /> + </mxGeometry> + </mxCell> + <mxCell id="Ork7YycwdDH3GpRj4XOS-78" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;fillColor=#dae8fc;strokeColor=#6c8ebf;" edge="1" parent="1"> + <mxGeometry width="50" height="50" relative="1" as="geometry"> + <mxPoint x="1028.5700000000002" y="420" as="sourcePoint" /> + <mxPoint x="1029" y="480" as="targetPoint" /> + </mxGeometry> + </mxCell> + <mxCell id="Ork7YycwdDH3GpRj4XOS-79" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;fillColor=#dae8fc;strokeColor=#6c8ebf;" edge="1" parent="1"> + <mxGeometry width="50" height="50" relative="1" as="geometry"> + <mxPoint x="473.76" y="420" as="sourcePoint" /> + <mxPoint x="473.57" y="480" as="targetPoint" /> + </mxGeometry> + </mxCell> + <mxCell id="Ork7YycwdDH3GpRj4XOS-80" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;fillColor=#dae8fc;strokeColor=#6c8ebf;" edge="1" parent="1"> + <mxGeometry width="50" height="50" relative="1" as="geometry"> + <mxPoint x="623.76" y="420" as="sourcePoint" /> + <mxPoint x="623.5699999999999" y="480" as="targetPoint" /> + </mxGeometry> + </mxCell> + <mxCell id="Ork7YycwdDH3GpRj4XOS-81" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;fillColor=#dae8fc;strokeColor=#6c8ebf;" edge="1" parent="1"> + <mxGeometry width="50" height="50" relative="1" as="geometry"> + <mxPoint x="743.76" y="420" as="sourcePoint" /> + <mxPoint x="743.5699999999999" y="480" as="targetPoint" /> + </mxGeometry> + </mxCell> + <mxCell id="Ork7YycwdDH3GpRj4XOS-82" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;fillColor=#dae8fc;strokeColor=#6c8ebf;" edge="1" parent="1"> + <mxGeometry width="50" height="50" relative="1" as="geometry"> + <mxPoint x="858.76" y="420" as="sourcePoint" /> + <mxPoint x="858.5699999999999" y="480" as="targetPoint" /> + </mxGeometry> + </mxCell> + <mxCell id="Ork7YycwdDH3GpRj4XOS-83" value="Any Modern Operating System" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;" vertex="1" parent="1"> + <mxGeometry x="307.5" y="480" width="602.5" height="40" as="geometry" /> + </mxCell> + <mxCell id="Ork7YycwdDH3GpRj4XOS-84" value="Any Modern Operating System" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;" vertex="1" parent="1"> + <mxGeometry x="980" y="480" width="100" height="40" as="geometry" /> + </mxCell> + </root> + </mxGraphModel> + </diagram> +</mxfile> |