Files
2026-05-04 18:04:24 +02:00

1 line
30 KiB
XML

<?plantuml 1.2026.2?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentStyleType="text/css" data-diagram-type="CLASS" height="1577px" preserveAspectRatio="none" style="width:786px;height:1577px;background:#FFFFFF;" version="1.1" viewBox="0 0 786 1577" width="786px" zoomAndPan="magnify"><defs/><g><!--class IMenuItem--><g class="entity" data-qualified-name="IMenuItem" data-source-line="7" id="ent0002"><rect fill="#F1F1F1" height="122.5742" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="146.5313" x="336.68" y="607.19"/><ellipse cx="371.0854" cy="627.5005" fill="#B4A7E5" rx="11" ry="11" style="stroke:#181818;stroke-width:1;"/><path d="M367.0131,623.2657 L367.0131,621.1075 L374.3925,621.1075 L374.3925,623.2657 L371.9272,623.2657 L371.9272,631.3423 L374.3925,631.3423 L374.3925,633.5005 L367.0131,633.5005 L367.0131,631.3423 L369.4784,631.3423 L369.4784,623.2657 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacing" textLength="63.4336" x="393.385" y="623.7916">&#171;Interface&#187;</text><text fill="#000000" font-family="sans-serif" font-size="14" font-style="italic" lengthAdjust="spacing" textLength="71.4082" x="389.3977" y="639.858">IMenuItem</text><line style="stroke:#181818;stroke-width:0.5;" x1="337.68" x2="482.2113" y1="647.8111" y2="647.8111"/><line style="stroke:#181818;stroke-width:0.5;" x1="337.68" x2="482.2113" y1="655.8111" y2="655.8111"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="100.4951" x="342.68" y="673.3462">+~IMenuItem()</text><text fill="#000000" font-family="sans-serif" font-size="14" font-style="italic" lengthAdjust="spacing" textLength="134.5313" x="342.68" y="689.8345">+getPrice() : double</text><text fill="#000000" font-family="sans-serif" font-size="14" font-style="italic" lengthAdjust="spacing" textLength="133.7998" x="342.68" y="706.3228">+getName() : string</text><text fill="#000000" font-family="sans-serif" font-size="14" font-style="italic" lengthAdjust="spacing" textLength="132.0703" x="342.68" y="722.8111">+printInfo() : string</text></g><!--class MenuItem--><g class="entity" data-qualified-name="MenuItem" data-source-line="14" id="ent0003"><rect fill="#F1F1F1" height="163.418" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="230.0117" x="294.94" y="827.19"/><ellipse cx="372.0084" cy="843.19" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1;"/><path d="M374.9815,848.8331 Q374.4004,849.1319 373.7613,849.2813 Q373.1221,849.4307 372.4166,849.4307 Q369.9097,849.4307 368.5899,847.7789 Q367.2701,846.127 367.2701,843.0059 Q367.2701,839.8765 368.5899,838.2247 Q369.9097,836.5728 372.4166,836.5728 Q373.1221,836.5728 373.7696,836.7222 Q374.4171,836.8716 374.9815,837.1705 L374.9815,839.8931 Q374.3506,839.3121 373.7571,839.0423 Q373.1636,838.7725 372.5328,838.7725 Q371.188,838.7725 370.5032,839.8392 Q369.8184,840.9058 369.8184,843.0059 Q369.8184,845.0977 370.5032,846.1644 Q371.188,847.231 372.5328,847.231 Q373.1636,847.231 373.7571,846.9612 Q374.3506,846.6915 374.9815,846.1104 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="67.375" x="392.5084" y="848.481">MenuItem</text><line style="stroke:#181818;stroke-width:0.5;" x1="295.94" x2="523.9517" y1="859.19" y2="859.19"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="98.998" x="300.94" y="876.7252">#name : string</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="132.8633" x="300.94" y="893.2134">#basePrice : double</text><line style="stroke:#181818;stroke-width:0.5;" x1="295.94" x2="523.9517" y1="900.1666" y2="900.1666"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="218.0117" x="300.94" y="917.7017">+MenuItem(n: string, b: double)</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="96.4619" x="300.94" y="934.19">+~MenuItem()</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="134.5313" x="300.94" y="950.6783">+getPrice() : double</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="133.7998" x="300.94" y="967.1666">+getName() : string</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="132.0703" x="300.94" y="983.6548">+printInfo() : string</text></g><!--class Drink--><g class="entity" data-qualified-name="Drink" data-source-line="24" id="ent0004"><rect fill="#F1F1F1" height="130.4414" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="297.6533" x="83.12" y="1133.56"/><ellipse cx="209.1303" cy="1149.56" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1;"/><path d="M212.1034,1155.2031 Q211.5223,1155.5019 210.8832,1155.6513 Q210.244,1155.8007 209.5385,1155.8007 Q207.0316,1155.8007 205.7118,1154.1489 Q204.392,1152.497 204.392,1149.3759 Q204.392,1146.2465 205.7118,1144.5947 Q207.0316,1142.9428 209.5385,1142.9428 Q210.244,1142.9428 210.8915,1143.0922 Q211.5389,1143.2416 212.1034,1143.5405 L212.1034,1146.2631 Q211.4725,1145.6821 210.879,1145.4123 Q210.2855,1145.1425 209.6547,1145.1425 Q208.3099,1145.1425 207.6251,1146.2092 Q206.9403,1147.2758 206.9403,1149.3759 Q206.9403,1151.4677 207.6251,1152.5344 Q208.3099,1153.601 209.6547,1153.601 Q210.2855,1153.601 210.879,1153.3312 Q211.4725,1153.0615 212.1034,1152.4804 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="37.1328" x="229.6303" y="1154.851">Drink</text><line style="stroke:#181818;stroke-width:0.5;" x1="84.12" x2="379.7733" y1="1165.56" y2="1165.56"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="88.8125" x="89.12" y="1183.0952">-volume : int</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="141.4561" x="89.12" y="1199.5834">-isCarbonated : bool</text><line style="stroke:#181818;stroke-width:0.5;" x1="84.12" x2="379.7733" y1="1206.5366" y2="1206.5366"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="285.6533" x="89.12" y="1224.0717">+Drink(n: string, b: double, v: int, c: bool)</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="66.2197" x="89.12" y="1240.56">+~Drink()</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="132.0703" x="89.12" y="1257.0483">+printInfo() : string</text></g><!--class AlcoholicDrink--><g class="entity" data-qualified-name="AlcoholicDrink" data-source-line="32" id="ent0005"><rect fill="#F1F1F1" height="113.9531" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="431.8906" x="7" y="1431.68"/><ellipse cx="169.1143" cy="1447.68" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1;"/><path d="M172.0874,1453.3231 Q171.5063,1453.6219 170.8672,1453.7713 Q170.228,1453.9207 169.5225,1453.9207 Q167.0156,1453.9207 165.6958,1452.2689 Q164.376,1450.617 164.376,1447.4959 Q164.376,1444.3665 165.6958,1442.7147 Q167.0156,1441.0628 169.5225,1441.0628 Q170.228,1441.0628 170.8755,1441.2122 Q171.5229,1441.3616 172.0874,1441.6605 L172.0874,1444.3831 Q171.4565,1443.8021 170.863,1443.5323 Q170.2695,1443.2625 169.6387,1443.2625 Q168.2939,1443.2625 167.6091,1444.3292 Q166.9243,1445.3958 166.9243,1447.4959 Q166.9243,1449.5877 167.6091,1450.6544 Q168.2939,1451.721 169.6387,1451.721 Q170.2695,1451.721 170.863,1451.4512 Q171.4565,1451.1815 172.0874,1450.6004 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="99.1621" x="189.6143" y="1452.971">AlcoholicDrink</text><line style="stroke:#181818;stroke-width:0.5;" x1="8" x2="437.8906" y1="1463.68" y2="1463.68"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="170.9668" x="13" y="1481.2152">-alcoholContent : double</text><line style="stroke:#181818;stroke-width:0.5;" x1="8" x2="437.8906" y1="1488.1683" y2="1488.1683"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="419.8906" x="13" y="1505.7034">+AlcoholicDrink(n: string, b: double, v: int, c: bool, a: double)</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="128.249" x="13" y="1522.1917">+~AlcoholicDrink()</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="132.0703" x="13" y="1538.68">+printInfo() : string</text></g><!--class Ingredient--><g class="entity" data-qualified-name="Ingredient" data-source-line="39" id="ent0006"><rect fill="#F1F1F1" height="163.418" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="280.1328" x="473.88" y="1406.95"/><ellipse cx="574.9152" cy="1422.95" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1;"/><path d="M577.8883,1428.5931 Q577.3072,1428.8919 576.6681,1429.0413 Q576.0289,1429.1907 575.3234,1429.1907 Q572.8165,1429.1907 571.4967,1427.5389 Q570.1769,1425.887 570.1769,1422.7659 Q570.1769,1419.6365 571.4967,1417.9847 Q572.8165,1416.3328 575.3234,1416.3328 Q576.0289,1416.3328 576.6764,1416.4822 Q577.3238,1416.6316 577.8883,1416.9305 L577.8883,1419.6531 Q577.2574,1419.0721 576.6639,1418.8023 Q576.0704,1418.5325 575.4396,1418.5325 Q574.0948,1418.5325 573.41,1419.5992 Q572.7252,1420.6658 572.7252,1422.7659 Q572.7252,1424.8577 573.41,1425.9244 Q574.0948,1426.991 575.4396,1426.991 Q576.0704,1426.991 576.6639,1426.7212 Q577.2574,1426.4515 577.8883,1425.8704 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="69.5625" x="595.4152" y="1428.241">Ingredient</text><line style="stroke:#181818;stroke-width:0.5;" x1="474.88" x2="753.0128" y1="1438.95" y2="1438.95"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="98.2461" x="479.88" y="1456.4852">-name : string</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="96.291" x="479.88" y="1472.9734">-cost : double</text><line style="stroke:#181818;stroke-width:0.5;" x1="474.88" x2="753.0128" y1="1479.9266" y2="1479.9266"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="89.7969" x="479.88" y="1497.4617">+Ingredient()</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="268.1328" x="479.88" y="1513.95">+Ingredient(name: string, cost: double)</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="98.6494" x="479.88" y="1530.4383">+~Ingredient()</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="133.7998" x="479.88" y="1546.9266">+getName() : string</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="132.7061" x="479.88" y="1563.4148">+getCost() : double</text></g><!--class Pizza--><g class="entity" data-qualified-name="Pizza" data-source-line="49" id="ent0007"><rect fill="#F1F1F1" height="262.3477" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="347.043" x="432.42" y="1067.6"/><ellipse cx="583.9078" cy="1083.6" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1;"/><path d="M586.8809,1089.2431 Q586.2999,1089.5419 585.6607,1089.6913 Q585.0216,1089.8407 584.316,1089.8407 Q581.8092,1089.8407 580.4893,1088.1889 Q579.1695,1086.537 579.1695,1083.4159 Q579.1695,1080.2865 580.4893,1078.6347 Q581.8092,1076.9828 584.316,1076.9828 Q585.0216,1076.9828 585.669,1077.1322 Q586.3165,1077.2816 586.8809,1077.5805 L586.8809,1080.3031 Q586.2501,1079.7221 585.6566,1079.4523 Q585.0631,1079.1825 584.4322,1079.1825 Q583.0875,1079.1825 582.4027,1080.2492 Q581.7179,1081.3158 581.7179,1083.4159 Q581.7179,1085.5077 582.4027,1086.5744 Q583.0875,1087.641 584.4322,1087.641 Q585.0631,1087.641 585.6566,1087.3712 Q586.2501,1087.1015 586.8809,1086.5204 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="35.5674" x="604.4078" y="1088.891">Pizza</text><line style="stroke:#181818;stroke-width:0.5;" x1="433.42" x2="778.463" y1="1099.6" y2="1099.6"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="99.5859" x="438.42" y="1117.1352">-diameter : int</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="158.7852" x="438.42" y="1133.6234">-hasExtraCheese : bool</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="181.1592" x="438.42" y="1150.1117">-ingredients : Ingredient**</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="145.4482" x="438.42" y="1166.6">-maxIngredients : int</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="165.1016" x="438.42" y="1183.0883">-currentIngredients : int</text><line style="stroke:#181818;stroke-width:0.5;" x1="433.42" x2="778.463" y1="1190.0414" y2="1190.0414"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="55.8018" x="438.42" y="1207.5766">+Pizza()</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="335.043" x="438.42" y="1224.0648">+Pizza(n: string, b: double, d: int, e: bool, m: int)</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="64.6543" x="438.42" y="1240.5531">+~Pizza()</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="247.7139" x="438.42" y="1257.0414">+addIngredient(i: Ingredient*) : bool</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="269.1035" x="438.42" y="1273.5297">+removeIngredient(name: string) : bool</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="134.5313" x="438.42" y="1290.018">+getPrice() : double</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="132.0703" x="438.42" y="1306.5063">+printInfo() : string</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="135.1602" x="438.42" y="1322.9945">+getDiameter() : int</text></g><!--class Customer--><g class="entity" data-qualified-name="Customer" data-source-line="65" id="ent0008"><rect fill="#F1F1F1" height="163.418" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="261.1289" x="518.38" y="586.77"/><ellipse cx="611.7213" cy="602.77" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1;"/><path d="M614.6945,608.4131 Q614.1134,608.7119 613.4742,608.8613 Q612.8351,609.0107 612.1295,609.0107 Q609.6227,609.0107 608.3029,607.3589 Q606.983,605.707 606.983,602.5859 Q606.983,599.4565 608.3029,597.8047 Q609.6227,596.1528 612.1295,596.1528 Q612.8351,596.1528 613.4825,596.3022 Q614.13,596.4516 614.6945,596.7505 L614.6945,599.4731 Q614.0636,598.8921 613.4701,598.6223 Q612.8766,598.3525 612.2457,598.3525 Q610.901,598.3525 610.2162,599.4192 Q609.5314,600.4858 609.5314,602.5859 Q609.5314,604.6777 610.2162,605.7444 Q610.901,606.811 612.2457,606.811 Q612.8766,606.811 613.4701,606.5412 Q614.0636,606.2715 614.6945,605.6904 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="65.9463" x="632.2213" y="608.061">Customer</text><line style="stroke:#181818;stroke-width:0.5;" x1="519.38" x2="778.5089" y1="618.77" y2="618.77"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="98.2461" x="524.38" y="636.3052">-name : string</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="103.5439" x="524.38" y="652.7934">-phone : string</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="125.0977" x="524.38" y="669.2817">-loyaltyPoints : int</text><line style="stroke:#181818;stroke-width:0.5;" x1="519.38" x2="778.5089" y1="676.2348" y2="676.2348"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="249.1289" x="524.38" y="693.77">+Customer(n: string, p: string, l: int)</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="95.0332" x="524.38" y="710.2583">+~Customer()</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="198.3789" x="524.38" y="726.7466">+addPoints(points: int) : void</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="141.3398" x="524.38" y="743.2348">+getDetails() : string</text></g><!--class Order--><g class="entity" data-qualified-name="Order" data-source-line="75" id="ent0009"><rect fill="#F1F1F1" height="278.8359" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="250.8066" x="404.54" y="230.93"/><ellipse cx="506.2212" cy="246.93" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1;"/><path d="M509.1943,252.5731 Q508.6132,252.8719 507.9741,253.0213 Q507.3349,253.1707 506.6294,253.1707 Q504.1225,253.1707 502.8027,251.5189 Q501.4829,249.867 501.4829,246.7459 Q501.4829,243.6165 502.8027,241.9647 Q504.1225,240.3128 506.6294,240.3128 Q507.3349,240.3128 507.9824,240.4622 Q508.6298,240.6116 509.1943,240.9105 L509.1943,243.6331 Q508.5634,243.0521 507.9699,242.7823 Q507.3764,242.5125 506.7456,242.5125 Q505.4008,242.5125 504.716,243.5792 Q504.0312,244.6458 504.0312,246.7459 Q504.0312,248.8377 504.716,249.9044 Q505.4008,250.971 506.7456,250.971 Q507.3764,250.971 507.9699,250.7012 Q508.5634,250.4315 509.1943,249.8504 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="38.9443" x="526.7212" y="252.221">Order</text><line style="stroke:#181818;stroke-width:0.5;" x1="405.54" x2="654.3466" y1="262.93" y2="262.93"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="143.582" x="410.54" y="280.4652">-items : IMenuItem**</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="110.4141" x="410.54" y="296.9534">-itemCount : int</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="94.5752" x="410.54" y="313.4417">-capacity : int</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" text-decoration="underline" textLength="109.1563" x="410.54" y="329.93">-totalOrder : int</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="157.5137" x="410.54" y="346.4183">-customer : Customer*</text><line style="stroke:#181818;stroke-width:0.5;" x1="405.54" x2="654.3466" y1="353.3714" y2="353.3714"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="238.8066" x="410.54" y="370.9066">+Order(capacity: int, c: Customer*)</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="68.0313" x="410.54" y="387.3948">+~Order()</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="193.9287" x="410.54" y="403.8831">+getCustomer() : Customer*</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="210.1367" x="410.54" y="420.3714">+addItem(i: IMenuItem*) : bool</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="229.6807" x="410.54" y="436.8597">+removeItem(name: string) : bool</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="174.3711" x="410.54" y="453.348">+calculateTotal() : double</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" text-decoration="underline" textLength="149.7617" x="410.54" y="469.8362">+getTotaOrders() : int</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="144.2998" x="410.54" y="486.3245">+getItemCount() : int</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="228.3477" x="410.54" y="502.8128">+getItem(index: int) : IMenuItem*</text></g><!--class Pizzeria--><g class="entity" data-qualified-name="Pizzeria" data-source-line="92" id="ent0010"><rect fill="#F1F1F1" height="146.9297" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="253.6504" x="403.12" y="7"/><ellipse cx="499.1239" cy="23" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1;"/><path d="M502.0971,28.6431 Q501.516,28.9419 500.8768,29.0913 Q500.2377,29.2407 499.5321,29.2407 Q497.0253,29.2407 495.7054,27.5889 Q494.3856,25.937 494.3856,22.8159 Q494.3856,19.6865 495.7054,18.0347 Q497.0253,16.3828 499.5321,16.3828 Q500.2377,16.3828 500.8851,16.5322 Q501.5326,16.6816 502.0971,16.9805 L502.0971,19.7031 Q501.4662,19.1221 500.8727,18.8523 Q500.2792,18.5825 499.6483,18.5825 Q498.3036,18.5825 497.6188,19.6492 Q496.934,20.7158 496.934,22.8159 Q496.934,24.9077 497.6188,25.9744 Q498.3036,27.041 499.6483,27.041 Q500.2792,27.041 500.8727,26.7712 Q501.4662,26.5015 502.0971,25.9204 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="53.1426" x="519.6239" y="28.291">Pizzeria</text><line style="stroke:#181818;stroke-width:0.5;" x1="404.12" x2="655.7704" y1="39" y2="39"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="98.2461" x="409.12" y="56.5352">-name : string</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="159.1406" x="409.12" y="73.0234">-activeOrders : Order**</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="116.9287" x="409.12" y="89.5117">-orderCount : int</text><line style="stroke:#181818;stroke-width:0.5;" x1="404.12" x2="655.7704" y1="96.4648" y2="96.4648"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="241.6504" x="409.12" y="114">+Pizzeria(n: string, maxOrders: int)</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="82.2295" x="409.12" y="130.4883">+~Pizzeria()</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="216.7061" x="409.12" y="146.9766">+processOrder(o: Order*) : void</text></g><!--reverse link IMenuItem to MenuItem--><g class="link" data-entity-1="ent0002" data-entity-2="ent0003" data-link-type="extension" data-source-line="104" id="lnk11"><path codeLine="104" d="M409.95,748.26 C409.95,777.64 409.95,795.32 409.95,826.97" fill="none" id="IMenuItem-backto-MenuItem" style="stroke:#181818;stroke-width:1;"/><polygon fill="none" points="409.95,730.26,403.95,748.26,415.95,748.26,409.95,730.26" style="stroke:#181818;stroke-width:1;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="38.9302" x="410.95" y="793.7584">d&#283;d&#237; z</text></g><!--reverse link MenuItem to Drink--><g class="link" data-entity-1="ent0003" data-entity-2="ent0004" data-link-type="extension" data-source-line="105" id="lnk12"><path codeLine="105" d="M350.4231,1006.1594 C322.5531,1051.2294 297.81,1091.25 271.78,1133.36" fill="none" id="MenuItem-backto-Drink" style="stroke:#181818;stroke-width:1;"/><polygon fill="none" points="359.89,990.85,345.32,1003.0038,355.5262,1009.315,359.89,990.85" style="stroke:#181818;stroke-width:1;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="38.9302" x="337.89" y="1034.1684">d&#283;d&#237; z</text></g><!--reverse link MenuItem to Pizza--><g class="link" data-entity-1="ent0003" data-entity-2="ent0007" data-link-type="extension" data-source-line="106" id="lnk13"><path codeLine="106" d="M475.1942,1005.7261 C491.3942,1029.5061 499.39,1041.27 517.12,1067.32" fill="none" id="MenuItem-backto-Pizza" style="stroke:#181818;stroke-width:1;"/><polygon fill="none" points="465.06,990.85,470.2356,1009.1041,480.1529,1002.348,465.06,990.85" style="stroke:#181818;stroke-width:1;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="38.9302" x="497.21" y="1034.1684">d&#283;d&#237; z</text></g><!--reverse link Drink to AlcoholicDrink--><g class="link" data-entity-1="ent0004" data-entity-2="ent0005" data-link-type="extension" data-source-line="107" id="lnk14"><path codeLine="107" d="M229.3677,1282.3712 C227.7977,1332.6012 226.2,1383.59 224.7,1431.53" fill="none" id="Drink-backto-AlcoholicDrink" style="stroke:#181818;stroke-width:1;"/><polygon fill="none" points="229.93,1264.38,223.3706,1282.1838,235.3647,1282.5587,229.93,1264.38" style="stroke:#181818;stroke-width:1;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="38.9302" x="227.91" y="1373.5184">d&#283;d&#237; z</text></g><!--reverse link Pizza to Ingredient--><g class="link" data-entity-1="ent0007" data-entity-2="ent0006" data-link-type="composition" data-source-line="110" id="lnk15"><path codeLine="110" d="M609.9017,1342.2354 C610.6217,1368.2754 611.03,1382.91 611.69,1406.68" fill="none" id="Pizza-backto-Ingredient" style="stroke:#181818;stroke-width:1;"/><polygon fill="#181818" points="609.57,1330.24,605.7374,1336.3483,609.9017,1342.2354,613.7343,1336.1272,609.57,1330.24" style="stroke:#181818;stroke-width:1;"/><polygon fill="#000000" points="615.7987,1373.6033,618.4856,1364.4802,612.61,1364.6433,615.7987,1373.6033" style="stroke:#000000;stroke-width:1;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="57.3066" x="624.66" y="1373.5184">obsahuje</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="22.7119" x="588.5411" y="1396.293">0..*</text></g><!--reverse link Order to IMenuItem--><g class="link" data-entity-1="ent0009" data-entity-2="ent0002" data-link-type="composition" data-source-line="111" id="lnk16"><path codeLine="111" d="M469.3021,521.0011 C455.5121,555.0211 445.97,578.59 434.56,606.73" fill="none" id="Order-backto-IMenuItem" style="stroke:#181818;stroke-width:1;"/><polygon fill="#181818" points="473.81,509.88,467.849,513.9379,469.3021,521.0011,475.2631,516.9432,473.81,509.88" style="stroke:#181818;stroke-width:1;"/><polygon fill="#000000" points="462.3221,553.0592,468.443,545.7802,462.9955,543.5725,462.3221,553.0592" style="stroke:#000000;stroke-width:1;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="57.3066" x="473.2" y="553.3384">obsahuje</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="22.7119" x="414.1753" y="596.3096">0..*</text></g><!--reverse link Order to Customer--><g class="link" data-entity-1="ent0009" data-entity-2="ent0008" data-link-type="aggregation" data-source-line="114" id="lnk17"><path codeLine="114" d="M590.0865,521.0138 C600.6165,547.2038 606.82,562.66 616.35,586.35" fill="none" id="Order-backto-Customer" style="stroke:#181818;stroke-width:1;"/><polygon fill="none" points="585.61,509.88,584.137,516.9391,590.0865,521.0138,591.5595,513.9547,585.61,509.88" style="stroke:#181818;stroke-width:1;"/><polygon fill="#000000" points="610.4648,553.0645,609.8182,543.5759,604.3644,545.7682,610.4648,553.0645" style="stroke:#000000;stroke-width:1;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="29.3008" x="617.6" y="553.3384">pat&#345;&#237;</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="8.2202" x="605.1006" y="575.9496">1</text></g><!--reverse link Pizzeria to Order--><g class="link" data-entity-1="ent0010" data-entity-2="ent0009" data-link-type="aggregation" data-source-line="115" id="lnk18"><path codeLine="115" d="M529.95,166.11 C529.95,189.43 529.95,204.09 529.95,230.52" fill="none" id="Pizzeria-backto-Order" style="stroke:#181818;stroke-width:1;"/><polygon fill="none" points="529.95,154.11,525.95,160.11,529.95,166.11,533.95,160.11,529.95,154.11" style="stroke:#181818;stroke-width:1;"/><polygon fill="#000000" points="534.95,197.5853,537.8889,188.5402,532.0111,188.5402,534.95,197.5853" style="stroke:#000000;stroke-width:1;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="53.3013" x="543.95" y="197.4984">spravuje</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="22.7119" x="507.3683" y="220.0399">0..*</text></g><?plantuml-src ZLR1RkCs4BthAmZlOMqdNcolmI90uFGW56s3xQBtaSH4N4iSWQJSM6ds3_81HKzxtCF-GY_E_bU7eaHHjXmabrWpRuPlXez3wesG5IWeMLg0rbV6A97KXiSfoZz4mzdxI7j8YHBJN679sIqKcWSkdKE6VmbvrtcYjsorMh5FF_xPVyzs3DX7R785Sl_TsgD8ICFLBQISnRzoMSU6b-p3XxYtNbwoXuZHtndxuW7pHMTwW4GR1QbvP7VSt2YHylc2NR0CwwJWaw3Ve7GOiX7BOqn5PXFBMmnHZr7KjeLvZexL6oOftpZR6vQ0vYsPGog-0Db7dBEan_H5VJagytHj9mjwkOfh-jnq9QpO5ekwBO92EfFGQr09IZ0y8qU2M7I9sz19_kTiswOuPwcBy0MvcCMhg5qLAUPOY7JC4PnvZIGCQGxRC0vw7Rjp1aUTFyZpEiQnl5Cy4vPMp_PO52kMeZxYFOJwjGAJpJ9KOkEF24yaE2a9SgmfHoWYNyEDQ1hmz3D12UW0ZYIHW_xvdix8EkTSyr0K91TFGvDZ8BLSTe0IxkCHPiYRrafnszufzvbZvejpNzFxctNxo_lzBLk3xzKu4sHPq3mnOhqOIrxn4hVynCOSO4yVrKaH-Q3hhkMjqrRljsPTQqE3LhqehYf7UMGiS0U5sTsWE6ngdpFiP3NyBCQDy-YWToxfl6h_EJYji4MH1JLn0wBGauVcTvK59GcQTgro-j7dXMCzQwpR8nze1Yf8XTcDZ0_QW17f8pDee70BZ8NMDVB2rx_ioBRWUPzrc1CUvtlXaC5P6vepaTUAp0vo4POshQxsLZYjgvG6O5tGEFvaYvkuvFhYYPA5j3orLvEd6_Vzd7RDXSpulT_FWVHuL70bu4KzqaqgjjoH85_xm-yfsg_3JJtpYKDHqjnmIOwFSWiT9ZIcN6ktEzWlw2Nvs3z3_cmCv3is_yYfbmAbpaMb5-ubyfPTF_-RYUSdQISriBYi2bxIUQTdI1GyJlwcFFxhWiqoYgBNJ3EBnXXtWRq0S4Dt170nhVVW8Xp1YEilM5ROs3V6l2ha_XlReCRd9xFbYcnqgTDc6NfbRQY7F_xZJ6y9y_oq_wgDO5kMSMfnlJ6ewaNaY2nfqTdxT--Mi_1AetKnqP3Ndpcxd4NkM8NGi1KXaZXUKPOxQ2cg_TSccw29sGOQ6o61OVAPR-ZWGK6VtD7EaLNswLZYebiRxTe_pOQvIEjMO2p8BklbYGF7VXRCTALWs_7x7m00?></g></svg>