452 lines
35 KiB
XML
452 lines
35 KiB
XML
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
|
|
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
|
<!-- Generated by graphviz version 2.44.1 (20200629.0846)
|
|
-->
|
|
<!-- Title: LodgeReservationSystem Pages: 1 -->
|
|
<svg width="1415pt" height="1382pt"
|
|
viewBox="0.00 0.00 1414.74 1381.50" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
|
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 1377.5)">
|
|
<title>LodgeReservationSystem</title>
|
|
<polygon fill="white" stroke="transparent" points="-4,4 -4,-1377.5 1410.74,-1377.5 1410.74,4 -4,4"/>
|
|
<g id="clust3" class="cluster">
|
|
<title>cluster_reservationsystem</title>
|
|
<polygon fill="lightyellow" stroke="lightyellow" points="470,-1100.5 470,-1307.5 1232,-1307.5 1232,-1100.5 470,-1100.5"/>
|
|
<text text-anchor="middle" x="851" y="-1292.3" font-family="Times New Roman,serif" font-size="14.00">lodge.reservationsystem</text>
|
|
</g>
|
|
<g id="clust1" class="cluster">
|
|
<title>cluster_data</title>
|
|
<polygon fill="lightgrey" stroke="lightgrey" points="8,-8 8,-685.5 1011,-685.5 1011,-8 8,-8"/>
|
|
<text text-anchor="middle" x="509.5" y="-670.3" font-family="Times New Roman,serif" font-size="14.00">lodge.data</text>
|
|
</g>
|
|
<g id="clust2" class="cluster">
|
|
<title>cluster_reservation</title>
|
|
<polygon fill="lightblue" stroke="lightblue" points="1019,-532 1019,-1073.5 1283,-1073.5 1283,-532 1019,-532"/>
|
|
<text text-anchor="middle" x="1151" y="-1058.3" font-family="Times New Roman,serif" font-size="14.00">lodge.reservation</text>
|
|
</g>
|
|
<!-- Account -->
|
|
<g id="node1" class="node">
|
|
<title>Account</title>
|
|
<polygon fill="none" stroke="black" points="484,-349.5 484,-494.5 712,-494.5 712,-349.5 484,-349.5"/>
|
|
<text text-anchor="middle" x="598" y="-482.5" font-family="Arial" font-size="10.00">Account</text>
|
|
<polyline fill="none" stroke="black" points="484,-475.5 712,-475.5 "/>
|
|
<text text-anchor="start" x="492" y="-463.5" font-family="Arial" font-size="10.00">+ account_number: String</text>
|
|
<text text-anchor="start" x="492" y="-452.5" font-family="Arial" font-size="10.00">+ phone_number: String</text>
|
|
<text text-anchor="start" x="492" y="-441.5" font-family="Arial" font-size="10.00">+ mailing_address: Address</text>
|
|
<text text-anchor="start" x="492" y="-430.5" font-family="Arial" font-size="10.00">+ email_address: EmailAddress</text>
|
|
<text text-anchor="start" x="492" y="-419.5" font-family="Arial" font-size="10.00">+ reservations: AccountReservationList</text>
|
|
<polyline fill="none" stroke="black" points="484,-412.5 712,-412.5 "/>
|
|
<text text-anchor="start" x="492" y="-400.5" font-family="Arial" font-size="10.00">+ add(Reservation): boolean</text>
|
|
<text text-anchor="start" x="492" y="-389.5" font-family="Arial" font-size="10.00">+ findReservation(String): Reservation</text>
|
|
<text text-anchor="start" x="492" y="-378.5" font-family="Arial" font-size="10.00">+ getAllReservations(): ListIterator<IReservation></text>
|
|
<text text-anchor="start" x="492" y="-367.5" font-family="Arial" font-size="10.00">+ update(Account): void</text>
|
|
<text text-anchor="start" x="492" y="-356.5" font-family="Arial" font-size="10.00">+ Write(Account): void</text>
|
|
</g>
|
|
<!-- AccountReservationList -->
|
|
<g id="node3" class="node">
|
|
<title>AccountReservationList</title>
|
|
<polygon fill="none" stroke="black" points="596.5,-158.5 596.5,-248.5 781.5,-248.5 781.5,-158.5 596.5,-158.5"/>
|
|
<text text-anchor="middle" x="689" y="-236.5" font-family="Arial" font-size="10.00">AccountReservationList</text>
|
|
<polyline fill="none" stroke="black" points="596.5,-229.5 781.5,-229.5 "/>
|
|
<text text-anchor="middle" x="689" y="-217.5" font-family="Arial" font-size="10.00">extends ArrayList<IReservation></text>
|
|
<polyline fill="none" stroke="black" points="596.5,-210.5 781.5,-210.5 "/>
|
|
<text text-anchor="start" x="604.5" y="-198.5" font-family="Arial" font-size="10.00">+ add(IReservation): boolean</text>
|
|
<text text-anchor="start" x="604.5" y="-187.5" font-family="Arial" font-size="10.00">+ find(String): Reservation</text>
|
|
<text text-anchor="start" x="604.5" y="-176.5" font-family="Arial" font-size="10.00">+ update(AccountReservationList): void</text>
|
|
<text text-anchor="start" x="604.5" y="-165.5" font-family="Arial" font-size="10.00">+ toString(): String</text>
|
|
</g>
|
|
<!-- Account->AccountReservationList -->
|
|
<g id="edge1" class="edge">
|
|
<title>Account->AccountReservationList</title>
|
|
<path fill="none" stroke="black" d="M628.18,-349.21C640.4,-320.13 654.29,-287.08 665.71,-259.91"/>
|
|
<polygon fill="black" stroke="black" points="665.79,-259.71 664.43,-252.63 670.44,-248.65 671.8,-255.73 665.79,-259.71"/>
|
|
<text text-anchor="middle" x="641.5" y="-324.6" font-family="Arial" font-size="8.00">1</text>
|
|
</g>
|
|
<!-- Address -->
|
|
<g id="node4" class="node">
|
|
<title>Address</title>
|
|
<polygon fill="none" stroke="black" points="857,-103.5 857,-303.5 985,-303.5 985,-103.5 857,-103.5"/>
|
|
<text text-anchor="middle" x="921" y="-291.5" font-family="Arial" font-size="10.00">Address</text>
|
|
<polyline fill="none" stroke="black" points="857,-284.5 985,-284.5 "/>
|
|
<text text-anchor="start" x="865" y="-272.5" font-family="Arial" font-size="10.00">+ street: String</text>
|
|
<text text-anchor="start" x="865" y="-261.5" font-family="Arial" font-size="10.00">+ city: String</text>
|
|
<text text-anchor="start" x="865" y="-250.5" font-family="Arial" font-size="10.00">+ state: String</text>
|
|
<text text-anchor="start" x="865" y="-239.5" font-family="Arial" font-size="10.00">+ zip: String</text>
|
|
<polyline fill="none" stroke="black" points="857,-232.5 985,-232.5 "/>
|
|
<text text-anchor="start" x="865" y="-220.5" font-family="Arial" font-size="10.00">+ getStreet(): String</text>
|
|
<text text-anchor="start" x="865" y="-209.5" font-family="Arial" font-size="10.00">+ setStreet(String): void</text>
|
|
<text text-anchor="start" x="865" y="-198.5" font-family="Arial" font-size="10.00">+ getCity(): String</text>
|
|
<text text-anchor="start" x="865" y="-187.5" font-family="Arial" font-size="10.00">+ setCity(String): void</text>
|
|
<text text-anchor="start" x="865" y="-176.5" font-family="Arial" font-size="10.00">+ getState(): String</text>
|
|
<text text-anchor="start" x="865" y="-165.5" font-family="Arial" font-size="10.00">+ setState(String): void</text>
|
|
<text text-anchor="start" x="865" y="-154.5" font-family="Arial" font-size="10.00">+ getZip(): String</text>
|
|
<text text-anchor="start" x="865" y="-143.5" font-family="Arial" font-size="10.00">+ setZip(String): void</text>
|
|
<text text-anchor="start" x="865" y="-132.5" font-family="Arial" font-size="10.00">+ equals(Object): boolean</text>
|
|
<text text-anchor="start" x="865" y="-121.5" font-family="Arial" font-size="10.00">+ hashCode(): int</text>
|
|
<text text-anchor="start" x="865" y="-110.5" font-family="Arial" font-size="10.00">+ toString(): String</text>
|
|
</g>
|
|
<!-- Account->Address -->
|
|
<g id="edge2" class="edge">
|
|
<title>Account->Address</title>
|
|
<path fill="none" stroke="black" d="M712.17,-354.07C738.08,-338.15 765.25,-320.88 790,-304 808.9,-291.11 828.8,-276.55 847.22,-262.62"/>
|
|
<polygon fill="black" stroke="black" points="847.45,-262.45 849.8,-255.63 857,-255.18 854.64,-262 847.45,-262.45"/>
|
|
<text text-anchor="middle" x="762.5" y="-324.6" font-family="Arial" font-size="8.00">1</text>
|
|
</g>
|
|
<!-- EmailAddress -->
|
|
<g id="node5" class="node">
|
|
<title>EmailAddress</title>
|
|
<polygon fill="none" stroke="black" points="420,-153 420,-254 578,-254 578,-153 420,-153"/>
|
|
<text text-anchor="middle" x="499" y="-242" font-family="Arial" font-size="10.00">EmailAddress</text>
|
|
<polyline fill="none" stroke="black" points="420,-235 578,-235 "/>
|
|
<text text-anchor="start" x="428" y="-223" font-family="Arial" font-size="10.00">+ email_address: String</text>
|
|
<polyline fill="none" stroke="black" points="420,-216 578,-216 "/>
|
|
<text text-anchor="start" x="428" y="-204" font-family="Arial" font-size="10.00">+ getEmail_address(): String</text>
|
|
<text text-anchor="start" x="428" y="-193" font-family="Arial" font-size="10.00">+ setEmail_address(String): void</text>
|
|
<text text-anchor="start" x="428" y="-182" font-family="Arial" font-size="10.00">+ equals(Object): boolean</text>
|
|
<text text-anchor="start" x="428" y="-171" font-family="Arial" font-size="10.00">+ hashCode(): int</text>
|
|
<text text-anchor="start" x="428" y="-160" font-family="Arial" font-size="10.00">+ toString(): String</text>
|
|
</g>
|
|
<!-- Account->EmailAddress -->
|
|
<g id="edge3" class="edge">
|
|
<title>Account->EmailAddress</title>
|
|
<path fill="none" stroke="black" d="M565.17,-349.21C552.77,-322.08 538.78,-291.5 526.87,-265.46"/>
|
|
<polygon fill="black" stroke="black" points="526.73,-265.13 520.59,-261.34 521.74,-254.22 527.87,-258.01 526.73,-265.13"/>
|
|
<text text-anchor="middle" x="557.5" y="-324.6" font-family="Arial" font-size="8.00">1</text>
|
|
</g>
|
|
<!-- AccountList -->
|
|
<g id="node2" class="node">
|
|
<title>AccountList</title>
|
|
<polygon fill="none" stroke="black" points="306,-542 306,-654 564,-654 564,-542 306,-542"/>
|
|
<text text-anchor="middle" x="435" y="-642" font-family="Arial" font-size="10.00">AccountList</text>
|
|
<polyline fill="none" stroke="black" points="306,-635 564,-635 "/>
|
|
<text text-anchor="middle" x="435" y="-623" font-family="Arial" font-size="10.00">extends ArrayList<Account></text>
|
|
<polyline fill="none" stroke="black" points="306,-616 564,-616 "/>
|
|
<text text-anchor="start" x="314" y="-604" font-family="Arial" font-size="10.00">+ accountSerial(String, Address, EmailAddress): String</text>
|
|
<text text-anchor="start" x="314" y="-593" font-family="Arial" font-size="10.00">+ add(Account): boolean</text>
|
|
<text text-anchor="start" x="314" y="-582" font-family="Arial" font-size="10.00">+ find(String): Account</text>
|
|
<text text-anchor="start" x="314" y="-571" font-family="Arial" font-size="10.00">+ save(Account): void</text>
|
|
<text text-anchor="start" x="314" y="-560" font-family="Arial" font-size="10.00">+ getListOfReservations(): List<? extends IReservation></text>
|
|
<text text-anchor="start" x="314" y="-549" font-family="Arial" font-size="10.00">+ showReservationList(): void</text>
|
|
</g>
|
|
<!-- AccountList->Account -->
|
|
<g id="edge4" class="edge">
|
|
<title>AccountList->Account</title>
|
|
<path fill="none" stroke="black" d="M486.57,-541.95C498.02,-529.73 510.37,-516.54 522.55,-503.54"/>
|
|
<polygon fill="none" stroke="black" points="522.73,-503.35 523.92,-496.23 530.94,-494.59 529.75,-501.7 522.73,-503.35"/>
|
|
<text text-anchor="middle" x="519.5" y="-515.6" font-family="Arial" font-size="8.00">0...*</text>
|
|
</g>
|
|
<!-- DuplicateObjectException -->
|
|
<g id="node9" class="node">
|
|
<title>DuplicateObjectException</title>
|
|
<polygon fill="none" stroke="black" points="660,-16.5 660,-65.5 830,-65.5 830,-16.5 660,-16.5"/>
|
|
<text text-anchor="middle" x="745" y="-53.5" font-family="Arial" font-size="10.00">DuplicateObjectException</text>
|
|
<polyline fill="none" stroke="black" points="660,-46.5 830,-46.5 "/>
|
|
<text text-anchor="start" x="668" y="-34.5" font-family="Arial" font-size="10.00">+ DuplicateObjectException()</text>
|
|
<text text-anchor="start" x="668" y="-23.5" font-family="Arial" font-size="10.00">+ DuplicateObjectException(String)</text>
|
|
</g>
|
|
<!-- AccountList->DuplicateObjectException -->
|
|
<g id="edge21" class="edge">
|
|
<title>AccountList->DuplicateObjectException</title>
|
|
<path fill="none" stroke="black" stroke-dasharray="5,2" d="M547.21,-541.96C555.86,-538.39 564.52,-535.02 573,-532 636.86,-509.22 670.68,-540.44 721,-495 786.64,-435.72 817.64,-187.02 790,-103 786.6,-92.67 780.71,-82.66 774.29,-73.83"/>
|
|
<polygon fill="black" stroke="black" points="768.04,-65.76 777.72,-70.91 771.1,-69.71 774.16,-73.67 774.16,-73.67 774.16,-73.67 771.1,-69.71 770.61,-76.42 768.04,-65.76 768.04,-65.76"/>
|
|
</g>
|
|
<!-- AccountReservationList->DuplicateObjectException -->
|
|
<g id="edge22" class="edge">
|
|
<title>AccountReservationList->DuplicateObjectException</title>
|
|
<path fill="none" stroke="black" stroke-dasharray="5,2" d="M704.45,-158.22C713.57,-132.08 724.93,-99.51 733.31,-75.51"/>
|
|
<polygon fill="black" stroke="black" points="736.7,-65.79 737.65,-76.72 735.05,-70.51 733.4,-75.23 733.4,-75.23 733.4,-75.23 735.05,-70.51 729.16,-73.75 736.7,-65.79 736.7,-65.79"/>
|
|
</g>
|
|
<!-- IReservation -->
|
|
<g id="node11" class="node">
|
|
<title>IReservation</title>
|
|
<polygon fill="none" stroke="black" points="1048,-540.5 1048,-655.5 1212,-655.5 1212,-540.5 1048,-540.5"/>
|
|
<text text-anchor="start" x="1056" y="-643.5" font-family="Arial" font-size="10.00">«interface»</text>
|
|
<text text-anchor="middle" x="1130" y="-632.5" font-family="Arial" font-size="10.00">IReservation</text>
|
|
<polyline fill="none" stroke="black" points="1048,-625.5 1212,-625.5 "/>
|
|
<text text-anchor="start" x="1056" y="-613.5" font-family="Arial" font-size="10.00">+ ReservationType(): String</text>
|
|
<text text-anchor="start" x="1056" y="-602.5" font-family="Arial" font-size="10.00">+ getReservation_number(): String</text>
|
|
<text text-anchor="start" x="1056" y="-591.5" font-family="Arial" font-size="10.00">+ getAccountNumber(): String</text>
|
|
<text text-anchor="start" x="1056" y="-580.5" font-family="Arial" font-size="10.00">+ getPhysical_address(): Address</text>
|
|
<text text-anchor="start" x="1056" y="-569.5" font-family="Arial" font-size="10.00">+ getPricePerNight(): float</text>
|
|
<text text-anchor="start" x="1056" y="-558.5" font-family="Arial" font-size="10.00">+ calculatePrice(): float</text>
|
|
<text text-anchor="start" x="1056" y="-547.5" font-family="Arial" font-size="10.00">+ checkValid(): boolean</text>
|
|
</g>
|
|
<!-- AccountReservationList->IReservation -->
|
|
<g id="edge5" class="edge">
|
|
<title>AccountReservationList->IReservation</title>
|
|
<path fill="none" stroke="black" d="M738.63,-248.67C816.38,-317.87 967.28,-452.18 1057.29,-532.29"/>
|
|
<polygon fill="none" stroke="black" points="1057.38,-532.37 1064.52,-533.37 1066.35,-540.35 1059.2,-539.35 1057.38,-532.37"/>
|
|
<text text-anchor="middle" x="1017.5" y="-420.1" font-family="Arial" font-size="8.00">0...*</text>
|
|
</g>
|
|
<!-- DataRepository -->
|
|
<g id="node6" class="node">
|
|
<title>DataRepository</title>
|
|
<polygon fill="none" stroke="black" points="16.5,-542 16.5,-654 287.5,-654 287.5,-542 16.5,-542"/>
|
|
<text text-anchor="middle" x="152" y="-642" font-family="Arial" font-size="10.00">DataRepository</text>
|
|
<polyline fill="none" stroke="black" points="16.5,-635 287.5,-635 "/>
|
|
<text text-anchor="start" x="24.5" y="-623" font-family="Arial" font-size="10.00">- directoryPath: String</text>
|
|
<text text-anchor="start" x="24.5" y="-612" font-family="Arial" font-size="10.00">- instance: DataRepository</text>
|
|
<polyline fill="none" stroke="black" points="16.5,-605 287.5,-605 "/>
|
|
<text text-anchor="start" x="24.5" y="-593" font-family="Arial" font-size="10.00">+ setDataStoreRoot(String): void</text>
|
|
<text text-anchor="start" x="24.5" y="-582" font-family="Arial" font-size="10.00">+ getPath(): String</text>
|
|
<text text-anchor="start" x="24.5" y="-571" font-family="Arial" font-size="10.00">+ Reservation(String): Reservation</text>
|
|
<text text-anchor="start" x="24.5" y="-560" font-family="Arial" font-size="10.00">+ WalkFileSystemTree(AccomodationManager, Path): void</text>
|
|
<text text-anchor="start" x="24.5" y="-549" font-family="Arial" font-size="10.00">+ LoadAccount(Path): Account</text>
|
|
</g>
|
|
<!-- AccomodationManager -->
|
|
<g id="node13" class="node">
|
|
<title>AccomodationManager</title>
|
|
<polygon fill="none" stroke="black" points="478.5,-1109 478.5,-1276 739.5,-1276 739.5,-1109 478.5,-1109"/>
|
|
<text text-anchor="middle" x="609" y="-1264" font-family="Arial" font-size="10.00">AccomodationManager</text>
|
|
<polyline fill="none" stroke="black" points="478.5,-1257 739.5,-1257 "/>
|
|
<text text-anchor="start" x="486.5" y="-1245" font-family="Arial" font-size="10.00">- accounts: AccountList</text>
|
|
<polyline fill="none" stroke="black" points="478.5,-1238 739.5,-1238 "/>
|
|
<text text-anchor="start" x="486.5" y="-1226" font-family="Arial" font-size="10.00">+ loadAll(): void</text>
|
|
<text text-anchor="start" x="486.5" y="-1215" font-family="Arial" font-size="10.00">+ load(Path): void</text>
|
|
<text text-anchor="start" x="486.5" y="-1204" font-family="Arial" font-size="10.00">+ retrieveLoadedAccounts(): List<Account></text>
|
|
<text text-anchor="start" x="486.5" y="-1193" font-family="Arial" font-size="10.00">+ retrieveAccount(String): Account</text>
|
|
<text text-anchor="start" x="486.5" y="-1182" font-family="Arial" font-size="10.00">+ AddAccount(Account): void</text>
|
|
<text text-anchor="start" x="486.5" y="-1171" font-family="Arial" font-size="10.00">+ UpdateAccount(Account): void</text>
|
|
<text text-anchor="start" x="486.5" y="-1160" font-family="Arial" font-size="10.00">+ newAccount(String, Address, EmailAddress): Account</text>
|
|
<text text-anchor="start" x="486.5" y="-1149" font-family="Arial" font-size="10.00">+ addReservation(Account, Reservation): boolean</text>
|
|
<text text-anchor="start" x="486.5" y="-1138" font-family="Arial" font-size="10.00">+ findReservation(String): Reservation</text>
|
|
<text text-anchor="start" x="486.5" y="-1127" font-family="Arial" font-size="10.00">+ getReservationList(): List<? extends IReservation></text>
|
|
<text text-anchor="start" x="486.5" y="-1116" font-family="Arial" font-size="10.00">+ showReservationList(): void</text>
|
|
</g>
|
|
<!-- DataRepository->AccomodationManager -->
|
|
<g id="edge14" class="edge">
|
|
<title>DataRepository->AccomodationManager</title>
|
|
<path fill="none" stroke="black" stroke-dasharray="5,2" d="M168.34,-654.16C200.05,-752.98 278.55,-961.88 409,-1090.5 426.61,-1107.86 447.8,-1122.82 469.71,-1135.51"/>
|
|
<polygon fill="black" stroke="black" points="478.47,-1140.45 467.55,-1139.46 474.11,-1137.99 469.76,-1135.54 469.76,-1135.54 469.76,-1135.54 474.11,-1137.99 471.97,-1131.62 478.47,-1140.45 478.47,-1140.45"/>
|
|
</g>
|
|
<!-- KitchenTypeEnum -->
|
|
<g id="node7" class="node">
|
|
<title>KitchenTypeEnum</title>
|
|
<polygon fill="none" stroke="black" points="582,-562.5 582,-633.5 678,-633.5 678,-562.5 582,-562.5"/>
|
|
<text text-anchor="start" x="590" y="-621.5" font-family="Arial" font-size="10.00">«enumeration»</text>
|
|
<text text-anchor="middle" x="630" y="-610.5" font-family="Arial" font-size="10.00">KitchenTypeEnum</text>
|
|
<polyline fill="none" stroke="black" points="582,-603.5 678,-603.5 "/>
|
|
<text text-anchor="start" x="590" y="-591.5" font-family="Arial" font-size="10.00">None</text>
|
|
<text text-anchor="start" x="590" y="-580.5" font-family="Arial" font-size="10.00">Kitchenette</text>
|
|
<text text-anchor="start" x="590" y="-569.5" font-family="Arial" font-size="10.00">FullKitchen</text>
|
|
</g>
|
|
<!-- ReservationStatusEnum -->
|
|
<g id="node8" class="node">
|
|
<title>ReservationStatusEnum</title>
|
|
<polygon fill="none" stroke="black" points="696.5,-562.5 696.5,-633.5 817.5,-633.5 817.5,-562.5 696.5,-562.5"/>
|
|
<text text-anchor="start" x="704.5" y="-621.5" font-family="Arial" font-size="10.00">«enumeration»</text>
|
|
<text text-anchor="middle" x="757" y="-610.5" font-family="Arial" font-size="10.00">ReservationStatusEnum</text>
|
|
<polyline fill="none" stroke="black" points="696.5,-603.5 817.5,-603.5 "/>
|
|
<text text-anchor="start" x="704.5" y="-591.5" font-family="Arial" font-size="10.00">Draft</text>
|
|
<text text-anchor="start" x="704.5" y="-580.5" font-family="Arial" font-size="10.00">Canceled</text>
|
|
<text text-anchor="start" x="704.5" y="-569.5" font-family="Arial" font-size="10.00">Completed</text>
|
|
</g>
|
|
<!-- IllegalOperationException -->
|
|
<g id="node10" class="node">
|
|
<title>IllegalOperationException</title>
|
|
<polygon fill="none" stroke="black" points="835.5,-573.5 835.5,-622.5 1002.5,-622.5 1002.5,-573.5 835.5,-573.5"/>
|
|
<text text-anchor="middle" x="919" y="-610.5" font-family="Arial" font-size="10.00">IllegalOperationException</text>
|
|
<polyline fill="none" stroke="black" points="835.5,-603.5 1002.5,-603.5 "/>
|
|
<text text-anchor="start" x="843.5" y="-591.5" font-family="Arial" font-size="10.00">+ IllegalOperationException()</text>
|
|
<text text-anchor="start" x="843.5" y="-580.5" font-family="Arial" font-size="10.00">+ IllegalOperationException(String)</text>
|
|
</g>
|
|
<!-- Reservation -->
|
|
<g id="node12" class="node">
|
|
<title>Reservation</title>
|
|
<polygon fill="none" stroke="black" points="1027,-721 1027,-1042 1275,-1042 1275,-721 1027,-721"/>
|
|
<text text-anchor="start" x="1035" y="-1030" font-family="Arial" font-size="10.00">«abstract»</text>
|
|
<text text-anchor="middle" x="1151" y="-1019" font-family="Arial" font-size="10.00">Reservation</text>
|
|
<polyline fill="none" stroke="black" points="1027,-1012 1275,-1012 "/>
|
|
<text text-anchor="start" x="1035" y="-1000" font-family="Arial" font-size="10.00"># type: char</text>
|
|
<text text-anchor="start" x="1035" y="-989" font-family="Arial" font-size="10.00"># reservation_number: String</text>
|
|
<text text-anchor="start" x="1035" y="-978" font-family="Arial" font-size="10.00"># physical_address: Address</text>
|
|
<text text-anchor="start" x="1035" y="-967" font-family="Arial" font-size="10.00"># mailing_address: Address</text>
|
|
<text text-anchor="start" x="1035" y="-956" font-family="Arial" font-size="10.00"># reservation_start_date: ZonedDateTime</text>
|
|
<text text-anchor="start" x="1035" y="-945" font-family="Arial" font-size="10.00"># reservation_end_date: ZonedDateTime</text>
|
|
<text text-anchor="start" x="1035" y="-934" font-family="Arial" font-size="10.00"># reservation_status: ReservationStatusEnum</text>
|
|
<text text-anchor="start" x="1035" y="-923" font-family="Arial" font-size="10.00"># kitchen: KitchenTypeEnum</text>
|
|
<text text-anchor="start" x="1035" y="-912" font-family="Arial" font-size="10.00"># numberOfBeds: Integer</text>
|
|
<text text-anchor="start" x="1035" y="-901" font-family="Arial" font-size="10.00"># numberOfBedRooms: Integer</text>
|
|
<text text-anchor="start" x="1035" y="-890" font-family="Arial" font-size="10.00"># numberOfBathRooms: Integer</text>
|
|
<text text-anchor="start" x="1035" y="-879" font-family="Arial" font-size="10.00"># numberOfFloors: Integer</text>
|
|
<text text-anchor="start" x="1035" y="-868" font-family="Arial" font-size="10.00"># squareFeet: Integer</text>
|
|
<text text-anchor="start" x="1035" y="-857" font-family="Arial" font-size="10.00"># price: Float</text>
|
|
<text text-anchor="start" x="1035" y="-846" font-family="Arial" font-size="10.00"># accountNumber: String</text>
|
|
<polyline fill="none" stroke="black" points="1027,-839 1275,-839 "/>
|
|
<text text-anchor="start" x="1035" y="-827" font-family="Arial" font-size="10.00">+ getReservation_number(): String</text>
|
|
<text text-anchor="start" x="1035" y="-816" font-family="Arial" font-size="10.00">+ setReservation_number(String): void</text>
|
|
<text text-anchor="start" x="1035" y="-805" font-family="Arial" font-size="10.00">+ getAccountNumber(): String</text>
|
|
<text text-anchor="start" x="1035" y="-794" font-family="Arial" font-size="10.00">+ setAccountNumber(String): void</text>
|
|
<text text-anchor="start" x="1035" y="-783" font-family="Arial" font-size="10.00">+ getPhysical_address(): Address</text>
|
|
<text text-anchor="start" x="1035" y="-772" font-family="Arial" font-size="10.00">+ setPhysical_address(Address): void</text>
|
|
<text text-anchor="start" x="1035" y="-761" font-family="Arial" font-size="10.00">+ Write(Reservation): void</text>
|
|
<text text-anchor="start" x="1035" y="-750" font-family="Arial" font-size="10.00">+ Change(Reservation, ReservationStatusEnum): void</text>
|
|
<text text-anchor="start" x="1035" y="-739" font-family="Arial" font-size="10.00">+ update(Reservation): void</text>
|
|
<text text-anchor="start" x="1035" y="-728" font-family="Arial" font-size="10.00">+ ReservationType(): String</text>
|
|
</g>
|
|
<!-- Reservation->Address -->
|
|
<g id="edge11" class="edge">
|
|
<title>Reservation->Address</title>
|
|
<path fill="none" stroke="black" d="M1275.02,-808.7C1317.77,-776.91 1360.73,-735.32 1384,-685.5 1412.87,-623.69 1415.36,-592.59 1384,-532 1302.27,-374.07 1105.41,-275.97 996.55,-231.89"/>
|
|
<polygon fill="black" stroke="black" points="996.48,-231.86 989.42,-233.35 985.33,-227.41 992.39,-225.92 996.48,-231.86"/>
|
|
<text text-anchor="middle" x="1380.5" y="-515.6" font-family="Arial" font-size="8.00">1</text>
|
|
</g>
|
|
<!-- Reservation->KitchenTypeEnum -->
|
|
<g id="edge12" class="edge">
|
|
<title>Reservation->KitchenTypeEnum</title>
|
|
<path fill="none" stroke="black" stroke-dasharray="5,2" d="M1026.81,-850C926.74,-820.65 786.74,-768.33 687,-685.5 672.89,-673.78 660.98,-657.67 651.75,-642.53"/>
|
|
<polygon fill="black" stroke="black" points="646.63,-633.77 655.56,-640.13 649.15,-638.08 651.67,-642.4 651.67,-642.4 651.67,-642.4 649.15,-638.08 647.79,-644.67 646.63,-633.77 646.63,-633.77"/>
|
|
</g>
|
|
<!-- Reservation->ReservationStatusEnum -->
|
|
<g id="edge13" class="edge">
|
|
<title>Reservation->ReservationStatusEnum</title>
|
|
<path fill="none" stroke="black" stroke-dasharray="5,2" d="M1026.74,-819.61C963.05,-785.13 886.41,-738.37 826,-685.5 811.49,-672.8 797.74,-656.75 786.4,-641.94"/>
|
|
<polygon fill="black" stroke="black" points="780.35,-633.87 789.95,-639.18 783.35,-637.87 786.35,-641.87 786.35,-641.87 786.35,-641.87 783.35,-637.87 782.75,-644.57 780.35,-633.87 780.35,-633.87"/>
|
|
</g>
|
|
<!-- Reservation->IllegalOperationException -->
|
|
<g id="edge23" class="edge">
|
|
<title>Reservation->IllegalOperationException</title>
|
|
<path fill="none" stroke="black" stroke-dasharray="5,2" d="M1026.85,-729.86C995.88,-692.28 965.68,-655.64 945.16,-630.74"/>
|
|
<polygon fill="black" stroke="black" points="938.58,-622.76 948.41,-627.61 941.76,-626.62 944.94,-630.47 944.94,-630.47 944.94,-630.47 941.76,-626.62 941.47,-633.34 938.58,-622.76 938.58,-622.76"/>
|
|
</g>
|
|
<!-- Reservation->IReservation -->
|
|
<g id="edge7" class="edge">
|
|
<title>Reservation->IReservation</title>
|
|
<path fill="none" stroke="black" stroke-dasharray="5,2" d="M1139.09,-720.83C1137.65,-701.51 1136.24,-682.68 1134.98,-665.82"/>
|
|
<polygon fill="none" stroke="black" points="1138.46,-665.3 1134.22,-655.59 1131.48,-665.82 1138.46,-665.3"/>
|
|
<text text-anchor="middle" x="1157" y="-696.1" font-family="Arial" font-size="8.00">implements</text>
|
|
</g>
|
|
<!-- ZonedDateTime -->
|
|
<g id="node18" class="node">
|
|
<title>ZonedDateTime</title>
|
|
<polygon fill="none" stroke="black" points="1291,-580 1291,-616 1375,-616 1375,-580 1291,-580"/>
|
|
<text text-anchor="middle" x="1333" y="-595.5" font-family="Arial" font-size="10.00">ZonedDateTime</text>
|
|
</g>
|
|
<!-- Reservation->ZonedDateTime -->
|
|
<g id="edge24" class="edge">
|
|
<title>Reservation->ZonedDateTime</title>
|
|
<path fill="none" stroke="black" stroke-dasharray="5,2" d="M1264.63,-720.84C1272.36,-708.98 1279.89,-697.12 1287,-685.5 1299.05,-665.79 1311.27,-642.64 1320.08,-625.25"/>
|
|
<polygon fill="black" stroke="black" points="1324.6,-616.24 1324.14,-627.2 1322.36,-620.71 1320.11,-625.18 1320.11,-625.18 1320.11,-625.18 1322.36,-620.71 1316.09,-623.16 1324.6,-616.24 1324.6,-616.24"/>
|
|
</g>
|
|
<!-- AccomodationManager->AccountList -->
|
|
<g id="edge6" class="edge">
|
|
<title>AccomodationManager->AccountList</title>
|
|
<path fill="none" stroke="black" d="M584.71,-1108.8C549.94,-990.41 486.65,-774.88 454.65,-665.91"/>
|
|
<polygon fill="black" stroke="black" points="454.57,-665.62 449.04,-660.99 451.18,-654.11 456.71,-658.74 454.57,-665.62"/>
|
|
<text text-anchor="middle" x="576.5" y="-879.6" font-family="Arial" font-size="8.00">1</text>
|
|
</g>
|
|
<!-- AccomodationManager->DataRepository -->
|
|
<g id="edge16" class="edge">
|
|
<title>AccomodationManager->DataRepository</title>
|
|
<path fill="none" stroke="black" stroke-dasharray="5,2" d="M500.6,-1108.76C489.18,-1097.61 478.35,-1085.76 469,-1073.5 364.21,-936.09 413,-856.2 306,-720.5 288.63,-698.47 266.49,-678.04 244.45,-660.45"/>
|
|
<polygon fill="black" stroke="black" points="236.34,-654.11 246.99,-656.73 240.28,-657.19 244.22,-660.27 244.22,-660.27 244.22,-660.27 240.28,-657.19 241.44,-663.81 236.34,-654.11 236.34,-654.11"/>
|
|
</g>
|
|
<!-- AccomodationManager->Reservation -->
|
|
<g id="edge15" class="edge">
|
|
<title>AccomodationManager->Reservation</title>
|
|
<path fill="none" stroke="black" stroke-dasharray="5,2" d="M735.01,-1108.94C739.72,-1106.06 744.39,-1103.24 749,-1100.5 837.2,-1048.03 938.83,-992.96 1017.84,-951.3"/>
|
|
<polygon fill="black" stroke="black" points="1026.87,-946.55 1020.12,-955.19 1022.44,-948.88 1018.02,-951.21 1018.02,-951.21 1018.02,-951.21 1022.44,-948.88 1015.92,-947.23 1026.87,-946.55 1026.87,-946.55"/>
|
|
</g>
|
|
<!-- HotelReservation -->
|
|
<g id="node14" class="node">
|
|
<title>HotelReservation</title>
|
|
<polygon fill="none" stroke="black" points="758,-1131 758,-1254 898,-1254 898,-1131 758,-1131"/>
|
|
<text text-anchor="middle" x="828" y="-1242" font-family="Arial" font-size="10.00">HotelReservation</text>
|
|
<polyline fill="none" stroke="black" points="758,-1235 898,-1235 "/>
|
|
<text text-anchor="middle" x="828" y="-1223" font-family="Arial" font-size="10.00">extends Reservation</text>
|
|
<polyline fill="none" stroke="black" points="758,-1216 898,-1216 "/>
|
|
<text text-anchor="start" x="766" y="-1204" font-family="Arial" font-size="10.00">+ HotelReservation()</text>
|
|
<text text-anchor="start" x="766" y="-1193" font-family="Arial" font-size="10.00">+ HotelReservation(Address)</text>
|
|
<text text-anchor="start" x="766" y="-1182" font-family="Arial" font-size="10.00">+ copy(String): Reservation</text>
|
|
<text text-anchor="start" x="766" y="-1171" font-family="Arial" font-size="10.00">+ ReservationType(): String</text>
|
|
<text text-anchor="start" x="766" y="-1160" font-family="Arial" font-size="10.00">+ checkValid(): boolean</text>
|
|
<text text-anchor="start" x="766" y="-1149" font-family="Arial" font-size="10.00">+ getPricePerNight(): float</text>
|
|
<text text-anchor="start" x="766" y="-1138" font-family="Arial" font-size="10.00">+ calculatePrice(): float</text>
|
|
</g>
|
|
<!-- HotelReservation->Reservation -->
|
|
<g id="edge8" class="edge">
|
|
<title>HotelReservation->Reservation</title>
|
|
<path fill="none" stroke="black" d="M878.79,-1130.81C887.96,-1120.49 897.6,-1110.04 907,-1100.5 942.09,-1064.91 981.89,-1028.02 1019.01,-994.95"/>
|
|
<polygon fill="none" stroke="black" points="1021.73,-997.21 1026.88,-987.95 1017.08,-991.97 1021.73,-997.21"/>
|
|
<text text-anchor="middle" x="941" y="-1084.1" font-family="Arial" font-size="8.00">extends</text>
|
|
</g>
|
|
<!-- CabinReservation -->
|
|
<g id="node15" class="node">
|
|
<title>CabinReservation</title>
|
|
<polygon fill="none" stroke="black" points="916.5,-1136.5 916.5,-1248.5 1059.5,-1248.5 1059.5,-1136.5 916.5,-1136.5"/>
|
|
<text text-anchor="middle" x="988" y="-1236.5" font-family="Arial" font-size="10.00">CabinReservation</text>
|
|
<polyline fill="none" stroke="black" points="916.5,-1229.5 1059.5,-1229.5 "/>
|
|
<text text-anchor="middle" x="988" y="-1217.5" font-family="Arial" font-size="10.00">extends Reservation</text>
|
|
<polyline fill="none" stroke="black" points="916.5,-1210.5 1059.5,-1210.5 "/>
|
|
<text text-anchor="start" x="924.5" y="-1198.5" font-family="Arial" font-size="10.00">+ CabinReservation()</text>
|
|
<text text-anchor="start" x="924.5" y="-1187.5" font-family="Arial" font-size="10.00">+ CabinReservation(Address)</text>
|
|
<text text-anchor="start" x="924.5" y="-1176.5" font-family="Arial" font-size="10.00">+ ReservationType(): String</text>
|
|
<text text-anchor="start" x="924.5" y="-1165.5" font-family="Arial" font-size="10.00">+ checkValid(): boolean</text>
|
|
<text text-anchor="start" x="924.5" y="-1154.5" font-family="Arial" font-size="10.00">+ getPricePerNight(): float</text>
|
|
<text text-anchor="start" x="924.5" y="-1143.5" font-family="Arial" font-size="10.00">+ calculatePrice(): float</text>
|
|
</g>
|
|
<!-- CabinReservation->Reservation -->
|
|
<g id="edge9" class="edge">
|
|
<title>CabinReservation->Reservation</title>
|
|
<path fill="none" stroke="black" d="M1017.14,-1136.26C1029.93,-1112 1045.71,-1082.09 1061.89,-1051.42"/>
|
|
<polygon fill="none" stroke="black" points="1065.13,-1052.79 1066.7,-1042.32 1058.93,-1049.53 1065.13,-1052.79"/>
|
|
<text text-anchor="middle" x="1061" y="-1084.1" font-family="Arial" font-size="8.00">extends</text>
|
|
</g>
|
|
<!-- HouseReservation -->
|
|
<g id="node16" class="node">
|
|
<title>HouseReservation</title>
|
|
<polygon fill="none" stroke="black" points="1078,-1131 1078,-1254 1224,-1254 1224,-1131 1078,-1131"/>
|
|
<text text-anchor="middle" x="1151" y="-1242" font-family="Arial" font-size="10.00">HouseReservation</text>
|
|
<polyline fill="none" stroke="black" points="1078,-1235 1224,-1235 "/>
|
|
<text text-anchor="middle" x="1151" y="-1223" font-family="Arial" font-size="10.00">extends Reservation</text>
|
|
<polyline fill="none" stroke="black" points="1078,-1216 1224,-1216 "/>
|
|
<text text-anchor="start" x="1086" y="-1204" font-family="Arial" font-size="10.00">+ HouseReservation()</text>
|
|
<text text-anchor="start" x="1086" y="-1193" font-family="Arial" font-size="10.00">+ HouseReservation(Address)</text>
|
|
<text text-anchor="start" x="1086" y="-1182" font-family="Arial" font-size="10.00">+ copy(String): Reservation</text>
|
|
<text text-anchor="start" x="1086" y="-1171" font-family="Arial" font-size="10.00">+ ReservationType(): String</text>
|
|
<text text-anchor="start" x="1086" y="-1160" font-family="Arial" font-size="10.00">+ checkValid(): boolean</text>
|
|
<text text-anchor="start" x="1086" y="-1149" font-family="Arial" font-size="10.00">+ getPricePerNight(): float</text>
|
|
<text text-anchor="start" x="1086" y="-1138" font-family="Arial" font-size="10.00">+ calculatePrice(): float</text>
|
|
</g>
|
|
<!-- HouseReservation->Reservation -->
|
|
<g id="edge10" class="edge">
|
|
<title>HouseReservation->Reservation</title>
|
|
<path fill="none" stroke="black" d="M1151,-1130.82C1151,-1107.89 1151,-1080.52 1151,-1052.46"/>
|
|
<polygon fill="none" stroke="black" points="1154.5,-1052.1 1151,-1042.1 1147.5,-1052.1 1154.5,-1052.1"/>
|
|
<text text-anchor="middle" x="1166" y="-1084.1" font-family="Arial" font-size="8.00">extends</text>
|
|
</g>
|
|
<!-- TestReservations -->
|
|
<g id="node17" class="node">
|
|
<title>TestReservations</title>
|
|
<polygon fill="none" stroke="black" points="854.5,-1335 854.5,-1373 961.5,-1373 961.5,-1335 854.5,-1335"/>
|
|
<text text-anchor="middle" x="908" y="-1361" font-family="Arial" font-size="10.00">TestReservations</text>
|
|
<polyline fill="none" stroke="black" points="854.5,-1354 961.5,-1354 "/>
|
|
<text text-anchor="start" x="862.5" y="-1342" font-family="Arial" font-size="10.00">+ main(String[]): void</text>
|
|
</g>
|
|
<!-- TestReservations->AccomodationManager -->
|
|
<g id="edge17" class="edge">
|
|
<title>TestReservations->AccomodationManager</title>
|
|
<path fill="none" stroke="black" stroke-dasharray="5,2" d="M854.41,-1343.33C822.57,-1336.23 782.09,-1324.77 749,-1307.5 735.08,-1300.23 721.24,-1291.44 707.99,-1282.01"/>
|
|
<polygon fill="black" stroke="black" points="699.83,-1276.06 710.56,-1278.31 703.87,-1279 707.91,-1281.95 707.91,-1281.95 707.91,-1281.95 703.87,-1279 705.26,-1285.58 699.83,-1276.06 699.83,-1276.06"/>
|
|
</g>
|
|
<!-- TestReservations->HotelReservation -->
|
|
<g id="edge18" class="edge">
|
|
<title>TestReservations->HotelReservation</title>
|
|
<path fill="none" stroke="black" stroke-dasharray="5,2" d="M898.82,-1334.7C890.01,-1317.14 876.14,-1289.47 863,-1263.27"/>
|
|
<polygon fill="black" stroke="black" points="858.39,-1254.08 866.89,-1261.01 860.63,-1258.55 862.87,-1263.02 862.87,-1263.02 862.87,-1263.02 860.63,-1258.55 858.85,-1265.04 858.39,-1254.08 858.39,-1254.08"/>
|
|
</g>
|
|
<!-- TestReservations->CabinReservation -->
|
|
<g id="edge19" class="edge">
|
|
<title>TestReservations->CabinReservation</title>
|
|
<path fill="none" stroke="black" stroke-dasharray="5,2" d="M917.18,-1334.7C926.58,-1315.96 941.75,-1285.71 955.64,-1258.02"/>
|
|
<polygon fill="black" stroke="black" points="960.29,-1248.74 959.83,-1259.7 958.05,-1253.21 955.81,-1257.68 955.81,-1257.68 955.81,-1257.68 958.05,-1253.21 951.79,-1255.66 960.29,-1248.74 960.29,-1248.74"/>
|
|
</g>
|
|
<!-- TestReservations->HouseReservation -->
|
|
<g id="edge20" class="edge">
|
|
<title>TestReservations->HouseReservation</title>
|
|
<path fill="none" stroke="black" stroke-dasharray="5,2" d="M961.5,-1346.8C994.55,-1340.9 1036.5,-1329.48 1068,-1307.5 1084.99,-1295.64 1099.83,-1279.16 1112.06,-1262.41"/>
|
|
<polygon fill="black" stroke="black" points="1117.86,-1254.19 1115.78,-1264.95 1114.98,-1258.27 1112.1,-1262.36 1112.1,-1262.36 1112.1,-1262.36 1114.98,-1258.27 1108.42,-1259.77 1117.86,-1254.19 1117.86,-1254.19"/>
|
|
</g>
|
|
</g>
|
|
</svg>
|