-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathFlightPub_drawIO
134 lines (134 loc) · 33 KB
/
FlightPub_drawIO
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
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
<mxGraphModel dx="0" dy="0" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="0" pageScale="1" background="none" math="0" shadow="0">
<root>
<mxCell id="0" />
<mxCell id="1" parent="0" />
<mxCell id="node22" parent="1" vertex="1" value="<p style="margin:0px;margin-top:4px;text-align:center;"><b>Address</b></p><hr size="1"/><p style="margin:0 0 0 4px;line-height:1.6;">+ getStreetNumber(): String<br/>+ setStreetNumber(String): void<br/>+ getPostcode(): int<br/>+ getUserID(): String<br/>+ setSuburb(String): void<br/>+ getStreet(): String<br/>+ setStateID(int): void<br/>+ setUserID(String): void<br/>+ setPostcode(int): void<br/>+ getStateID(): int<br/>+ setStreet(String): void<br/>+ getSuburb(): String</p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=14;fontFamily=Helvetica;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeWidth=1;">
<mxGeometry x="1684" y="-14" width="235" height="428" as="geometry" />
</mxCell>
<mxCell id="node17" parent="1" vertex="1" value="<p style="margin:0px;margin-top:4px;text-align:center;"><b>Airline</b></p><hr size="1"/><p style="margin:0 0 0 4px;line-height:1.6;">+ getAirlineID(): String<br/>+ getAirlineName(): String<br/>+ setAirlineName(String): void<br/>+ setAirlineID(String): void</p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=14;fontFamily=Helvetica;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeWidth=1;">
<mxGeometry x="1334" y="1572" width="222" height="164" as="geometry" />
</mxCell>
<mxCell id="node39" parent="1" vertex="1" value="<p style="margin:0px;margin-top:4px;text-align:center;"><b>BasicSearch</b></p><hr size="1"/><p style="margin:0 0 0 4px;line-height:1.6;">+ addBuffer(Date, int): Date<br/>+ getRating(): int<br/>+ setDestinationIn(String): void<br/>+ basicSingleStopSearch(): List&lt;SingleStopOver&gt;<br/>+ getStart(): String<br/>+ getEnd(): String<br/>+ isDirectFlight(): boolean<br/>+ isMembershipFlights(): boolean<br/>+ getSeats(): int<br/>+ getDestinationIn(): String<br/>+ setEnd(String): void<br/>+ setExactdate(boolean): void<br/>+ setRating(int): void<br/>+ setOriginIn(String): void<br/>+ setMembershipFlights(boolean): void<br/>+ getMinPrice(): double<br/>+ getOriginIn(): String<br/>+ setMinPrice(double): void<br/>+ setDirectFlight(boolean): void<br/>+ setNodest(boolean): void<br/>+ basicMultiStopSearch(): List&lt;MultiStopOver&gt;<br/>+ setFlightServices(FlightServices): void<br/>+ endOfDay(Date): Date<br/>+ isSearchByArrival(): boolean<br/>+ setSearchByArrival(boolean): void<br/>+ getMaxPrice(): double<br/>+ setSeats(int): void<br/>+ isExactdate(): boolean<br/>+ isSuitableTiming(Flight, Flight): boolean<br/>+ isNodest(): boolean<br/>+ setStart(String): void<br/>+ runBasicSearch(String, String, boolean): List&lt;Flight&gt;<br/>+ setMaxPrice(double): void<br/>+ runAdvancedSearch(UserAccount): List&lt;Flight&gt;<br/>+ setLocationServices(LocationServices): void</p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=14;fontFamily=Helvetica;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeWidth=1;">
<mxGeometry x="-150" y="-14" width="376" height="828" as="geometry" />
</mxCell>
<mxCell id="node4" parent="1" vertex="1" value="<p style="margin:0px;margin-top:4px;text-align:center;"><b>Booking</b></p><hr size="1"/><p style="margin:0 0 0 4px;line-height:1.6;">+ getFlightID(): String<br/>+ setUserID(String): void<br/>+ setFlightID(String): void<br/>+ getBookingID(): String<br/>+ getBookedSeats(): List&lt;String&gt;<br/>+ setBookingStatus(String): void<br/>+ getUserID(): String<br/>+ setBookingID(String): void<br/>+ setBookedSeats(List&lt;String&gt;): void<br/>+ getBookingStatus(): String</p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=14;fontFamily=Helvetica;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeWidth=1;">
<mxGeometry x="-150" y="890" width="269" height="362" as="geometry" />
</mxCell>
<mxCell id="node31" parent="1" vertex="1" value="<p style="margin:0px;margin-top:4px;text-align:center;"><i>&lt;&lt;interface&gt;&gt;</i><br/><b>BookingRepo</b></p><hr size="1"/><p style="margin:0 0 0 4px;line-height:1.6;">+ findByUser(String): List&lt;Booking&gt;</p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=14;fontFamily=Helvetica;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeWidth=1;">
<mxGeometry x="852" y="2011" width="261" height="66" as="geometry" />
</mxCell>
<mxCell id="node21" parent="1" vertex="1" value="<p style="margin:0px;margin-top:4px;text-align:center;"><b>BookingServices</b></p><hr size="1"/><p style="margin:0 0 0 4px;line-height:1.6;">+ listAll(): List&lt;Booking&gt;<br/>+ delete(String): void<br/>+ getUserBookings(String): List&lt;Booking&gt;</p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=14;fontFamily=Helvetica;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeWidth=1;">
<mxGeometry x="1097" y="1803" width="299" height="130" as="geometry" />
</mxCell>
<mxCell id="node3" parent="1" vertex="1" value="<p style="margin:0px;margin-top:4px;text-align:center;"><b>Country</b></p><hr size="1"/><p style="margin:0 0 0 4px;line-height:1.6;">+ setTags(LinkedList&lt;String&gt;): void<br/>+ setCountryName(String): void<br/>+ getDescription(): String<br/>+ setDescription(String): void<br/>+ getCountryName(): String<br/>+ getTags(): LinkedList&lt;String&gt;</p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=14;fontFamily=Helvetica;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeWidth=1;">
<mxGeometry x="173" y="1297" width="257" height="230" as="geometry" />
</mxCell>
<mxCell id="node13" parent="1" vertex="1" value="<p style="margin:0px;margin-top:4px;text-align:center;"><b>Flight</b></p><hr size="1"/><p style="margin:0 0 0 4px;line-height:1.6;">+ getArrival(): Date<br/>+ setTicketPrice(double): void<br/>+ getDestinationCode(): String<br/>+ getDeparture(): Date<br/>+ getDepartureCode(): String<br/>+ getFlightID(): String<br/>+ getBookings(): LinkedList&lt;String&gt;<br/>+ getMaxSeats(): int<br/>+ getTicketPrice(): double<br/>+ setBookedSeats(int): void<br/>+ setBookings(LinkedList&lt;String&gt;): void<br/>+ getRating(): double<br/>+ setDestinationID(String): void<br/>+ setArrival(Date): void<br/>+ getAirline(): String<br/>+ getFlightCode(): String<br/>+ setAirline(String): void<br/>+ getDepartureTime(): String<br/>+ setDeparture(Date): void<br/>+ setRating(double): void<br/>+ setOriginID(String): void<br/>+ setDepartureTime(String): void<br/>+ setMaxSeats(int): void<br/>+ getBookedSeats(): int<br/>+ getArrivalTime(): String<br/>+ setFlightID(String): void<br/>+ setArrivalTime(String): void<br/>+ setFlightCode(String): void</p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=14;fontFamily=Helvetica;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeWidth=1;">
<mxGeometry x="271" y="-14" width="286" height="682" as="geometry" />
</mxCell>
<mxCell id="node36" parent="1" vertex="1" value="<p style="margin:0px;margin-top:4px;text-align:center;"><b>FlightPubApp</b></p><hr size="1"/><p style="margin:0 0 0 4px;line-height:1.6;">+ main(String[]): void</p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=14;fontFamily=Helvetica;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeWidth=1;">
<mxGeometry x="1158" y="2011" width="169" height="57" as="geometry" />
</mxCell>
<mxCell id="node15" parent="1" vertex="1" value="<p style="margin:0px;margin-top:4px;text-align:center;"><i>&lt;&lt;interface&gt;&gt;</i><br/><b>FlightRepo</b></p><hr size="1"/><p style="margin:0 0 0 4px;line-height:1.6;">+ findByOrigin(String): List&lt;Flight&gt;<br/>+ findByDestination(String): List&lt;Flight&gt;<br/>+ findByOriginAndDestination(String, String, Date, Date): List&lt;Flight&gt;<br/>+ findByOrigin(String, Date, Date): List&lt;Flight&gt;<br/>+ findByOriginAndDestinationAndArrivalTimes(String, String, Date, Date): List&lt;Flight&gt;<br/>+ findByOriginAndArrivalTimes(String, Date, Date): List&lt;Flight&gt;</p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=14;fontFamily=Helvetica;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeWidth=1;">
<mxGeometry x="-150" y="1803" width="495" height="163" as="geometry" />
</mxCell>
<mxCell id="node32" parent="1" vertex="1" value="<p style="margin:0px;margin-top:4px;text-align:center;"><b>FlightServices</b></p><hr size="1"/><p style="margin:0 0 0 4px;line-height:1.6;">+ getById(String): Flight<br/>+ getByOrigin(String): List&lt;Flight&gt;<br/>+ delete(String): void<br/>+ getByDestination(String): List&lt;Flight&gt;<br/>+ listAll(): List&lt;Flight&gt;<br/>+ getByOriginAndDestination(String, String, Date, Date): List&lt;Flight&gt;<br/>+ saveOrUpdate(Flight): void<br/>+ getByOriginAndDestinationAndArrivalTimes(String, String, Date, Date): List&lt;Flight&gt;<br/>+ getByOrigin(String, Date, Date): List&lt;Flight&gt;<br/>+ getByOriginAndArrivalTimes(String, Date, Date): List&lt;Flight&gt;</p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=14;fontFamily=Helvetica;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeWidth=1;">
<mxGeometry x="1210" y="890" width="500" height="274" as="geometry" />
</mxCell>
<mxCell id="node16" parent="1" vertex="1" value="<p style="margin:0px;margin-top:4px;text-align:center;"><b>FrontEndErrorController</b></p><hr size="1"/><p style="margin:0 0 0 4px;line-height:1.6;">+ getSession(HttpSession): UserSession<br/>+ myerror(Model, HttpSession): String<br/>+ getErrorPath(Model, HttpSession): String</p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=14;fontFamily=Helvetica;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeWidth=1;">
<mxGeometry x="750" y="1803" width="302" height="130" as="geometry" />
</mxCell>
<mxCell id="node23" parent="1" vertex="1" value="<p style="margin:0px;margin-top:4px;text-align:center;"><b>IndexController</b></p><hr size="1"/><p style="margin:0 0 0 4px;line-height:1.6;">+ addDateAndTimeToModel(Model): Model<br/>+ setFlightServices(FlightServices): void<br/>+ loadLogout(Model, HttpSession): String<br/>+ addLoc(String, Model, HttpSession): String<br/>+ runLogin(LoginRequest, Model, HttpSession): String<br/>+ setLocationsServices(LocationServices): void<br/>+ runAdvancedSearch(BasicSearch, Model, HttpSession): String<br/>+ setBookingServices(BookingServices): void<br/>+ setUserService(UserAccountServices): void<br/>+ getSession(HttpSession): UserSession<br/>+ user(Model): String<br/>+ group(Model, HttpSession): String<br/>+ loadRegister(Model, HttpSession): String<br/>+ account(Model, HttpSession): String<br/>+ loadIndex(Recommendation, Model, HttpSession): String<br/>+ loadLogin(Model, HttpSession): String<br/>+ booking(Model): String<br/>+ runSearch(BasicSearch, Model, HttpSession): String</p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=14;fontFamily=Helvetica;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeWidth=1;">
<mxGeometry x="904" y="-14" width="433" height="516" as="geometry" />
</mxCell>
<mxCell id="node8" parent="1" vertex="1" value="<p style="margin:0px;margin-top:4px;text-align:center;"><b>Location</b></p><hr size="1"/><p style="margin:0 0 0 4px;line-height:1.6;">+ getLocationID(): String<br/>+ getLatitude(): double<br/>+ setLatitude(double): void<br/>+ getPopularity(): int<br/>+ setTags(LinkedList&lt;String&gt;): void<br/>+ getDescription(): String<br/>+ setLongitude(double): void<br/>+ getCountry(): String<br/>+ setDescription(String): void<br/>+ getLongitude(): double<br/>+ setLocationID(String): void<br/>+ getTags(): LinkedList&lt;String&gt;<br/>+ setCountry(String): void<br/>+ setPopularity(int): void<br/>+ getLocation(): String<br/>+ setLocation(String): void</p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=14;fontFamily=Helvetica;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeWidth=1;">
<mxGeometry x="602" y="-14" width="257" height="560" as="geometry" />
</mxCell>
<mxCell id="node7" parent="1" vertex="1" value="<p style="margin:0px;margin-top:4px;text-align:center;"><i>&lt;&lt;interface&gt;&gt;</i><br/><b>LocationRepo</b></p><hr size="1"/><p style="margin:0 0 0 4px;line-height:1.6;">+ findByLocation(String): List&lt;Location&gt;<br/>+ findAllSortedDescendingExcluding(String): List&lt;Location&gt;<br/>+ findAllByOrderByPopularityDesc(): List&lt;Location&gt;</p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=14;fontFamily=Helvetica;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeWidth=1;">
<mxGeometry x="1441" y="1803" width="411" height="121" as="geometry" />
</mxCell>
<mxCell id="node33" parent="1" vertex="1" value="<p style="margin:0px;margin-top:4px;text-align:center;"><b>LocationServices</b></p><hr size="1"/><p style="margin:0 0 0 4px;line-height:1.6;">+ delete(String): void<br/>+ mostPopular(): Location<br/>+ findAllSortedDescendingExcluding(String): List&lt;Location&gt;<br/>+ getById(String): Location<br/>+ listAll(): List&lt;Location&gt;<br/>+ saveOrUpdate(Location): Location<br/>+ findByLocation(String): Location</p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=14;fontFamily=Helvetica;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeWidth=1;">
<mxGeometry x="1040" y="1297" width="411" height="208" as="geometry" />
</mxCell>
<mxCell id="node9" parent="1" vertex="1" value="<p style="margin:0px;margin-top:4px;text-align:center;"><b>LoginRequest</b></p><hr size="1"/><p style="margin:0 0 0 4px;line-height:1.6;">+ getPassword(): String<br/>+ setPassword(String): void<br/>+ setEmail(String): void<br/>+ getEmail(): String</p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=14;fontFamily=Helvetica;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeWidth=1;">
<mxGeometry x="233" y="1572" width="219" height="186" as="geometry" />
</mxCell>
<mxCell id="node2" parent="1" vertex="1" value="<p style="margin:0px;margin-top:4px;text-align:center;"><b>MavenWrapperDownloader</b></p><hr size="1"/><p style="margin:0 0 0 4px;line-height:1.6;">+ main(String[]): void<br/>+ downloadFileFromURL(String, File): void</p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=14;fontFamily=Helvetica;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeWidth=1;">
<mxGeometry x="1865" y="1297" width="338" height="186" as="geometry" />
</mxCell>
<mxCell id="node37" parent="1" vertex="1" value="<p style="margin:0px;margin-top:4px;text-align:center;"><b>MavenWrapperDownloader</b></p><hr size="1"/><p style="margin:0 0 0 4px;line-height:1.6;">+ main(String[]): void<br/>+ downloadFileFromURL(String, File): void</p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=14;fontFamily=Helvetica;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeWidth=1;">
<mxGeometry x="-150" y="1572" width="338" height="186" as="geometry" />
</mxCell>
<mxCell id="node25" parent="1" vertex="1" value="<p style="margin:0px;margin-top:4px;text-align:center;"><b>MdbSpringBootApplication</b></p><hr size="1"/><p style="margin:0 0 0 4px;line-height:1.6;">+ main(String[]): void</p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=14;fontFamily=Helvetica;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeWidth=1;">
<mxGeometry x="544" y="2011" width="263" height="57" as="geometry" />
</mxCell>
<mxCell id="node1" parent="1" vertex="1" value="<p style="margin:0px;margin-top:4px;text-align:center;"><b>MdbSpringBootApplicationTests</b></p><hr size="1"/><p style="margin:0 0 0 4px;line-height:1.6;">~ contextLoads(): void</p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=14;fontFamily=Helvetica;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeWidth=1;">
<mxGeometry x="-150" y="2011" width="302" height="57" as="geometry" />
</mxCell>
<mxCell id="node19" parent="1" vertex="1" value="<p style="margin:0px;margin-top:4px;text-align:center;"><b>MdbSpringBootApplicationTests</b></p><hr size="1"/><p style="margin:0 0 0 4px;line-height:1.6;">~ contextLoads(): void</p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=14;fontFamily=Helvetica;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeWidth=1;">
<mxGeometry x="197" y="2011" width="302" height="57" as="geometry" />
</mxCell>
<mxCell id="node38" parent="1" vertex="1" value="<p style="margin:0px;margin-top:4px;text-align:center;"><b>Membership</b></p><hr size="1"/><p style="margin:0 0 0 4px;line-height:1.6;">+ setMembershipNo(String): void<br/>+ getMembershipNo(): String<br/>+ getAirlineID(): String<br/>+ setAirlineID(String): void</p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=14;fontFamily=Helvetica;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeWidth=1;">
<mxGeometry x="497" y="1572" width="242" height="164" as="geometry" />
</mxCell>
<mxCell id="node10" parent="1" vertex="1" value="<p style="margin:0px;margin-top:4px;text-align:center;"><b>MultiStopOver</b></p><hr size="1"/><p style="margin:0 0 0 4px;line-height:1.6;">+ getFirstFlight(): Flight<br/>+ getSecondFlight(): Flight<br/>+ setThirdFlight(Flight): void<br/>+ setSecondFlight(Flight): void<br/>+ setFirstFlight(Flight): void<br/>+ getThirdFlight(): Flight</p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=14;fontFamily=Helvetica;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeWidth=1;">
<mxGeometry x="768" y="1297" width="227" height="230" as="geometry" />
</mxCell>
<mxCell id="node40" parent="1" vertex="1" value="<p style="margin:0px;margin-top:4px;text-align:center;"><b>Notification</b></p><hr size="1"/><p style="margin:0 0 0 4px;line-height:1.6;">+ setDateTime(int): void<br/>+ getFlightID(): String<br/>+ getDateTime(): int<br/>+ getNotificationID(): String<br/>+ setContent(String): void<br/>+ getNotificationType(): String<br/>+ getContent(): String<br/>+ setNotificationType(String): void<br/>+ setNotificationID(String): void<br/>+ setFlightID(String): void</p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=14;fontFamily=Helvetica;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeWidth=1;">
<mxGeometry x="164" y="890" width="248" height="362" as="geometry" />
</mxCell>
<mxCell id="node0" parent="1" vertex="1" value="<p style="margin:0px;margin-top:4px;text-align:center;"><b>ObjectCreationController</b></p><hr size="1"/><p style="margin:0 0 0 4px;line-height:1.6;">+ addLoc(String, String, String, double, double, int, Model, HttpSession): String<br/>+ setUserService(UserAccountServices): void<br/>+ registerUSR(UserRegister, Model, HttpSession): String<br/>+ getSession(HttpSession): UserSession<br/>+ setLocationsServices(LocationServices): void<br/>+ addFlight(String, String, String, String, String, String, String, double, Model, HttpSession): String<br/>+ addUSR(String, String, String, String, Model, HttpSession): String<br/>+ setFlightServices(FlightServices): void</p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=14;fontFamily=Helvetica;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeWidth=1;">
<mxGeometry x="457" y="890" width="453" height="296" as="geometry" />
</mxCell>
<mxCell id="node18" parent="1" vertex="1" value="<p style="margin:0px;margin-top:4px;text-align:center;"><b>Plane</b></p><hr size="1"/><p style="margin:0 0 0 4px;line-height:1.6;">+ setPlaneID(String): void<br/>+ getPlaneType(): String<br/>+ setAirlineID(String): void<br/>+ setPlaneType(String): void<br/>+ getSeatCount(): int<br/>+ setSeatCount(int): void<br/>+ getPlaneID(): String<br/>+ getAirlineID(): String</p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=14;fontFamily=Helvetica;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeWidth=1;">
<mxGeometry x="955" y="890" width="210" height="296" as="geometry" />
</mxCell>
<mxCell id="node34" parent="1" vertex="1" value="<p style="margin:0px;margin-top:4px;text-align:center;"><b>Recommendation</b></p><hr size="1"/><p style="margin:0 0 0 4px;line-height:1.6;">+ setRecommendationLocation(String): void<br/>+ setFlightServices(FlightServices): void<br/>+ getRecommendation(): List&lt;Flight&gt;<br/>+ setLocationServices(LocationServices): void<br/>+ getRecommendationLocation(): String</p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=14;fontFamily=Helvetica;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeWidth=1;">
<mxGeometry x="1496" y="1297" width="324" height="208" as="geometry" />
</mxCell>
<mxCell id="node5" parent="1" vertex="1" value="<p style="margin:0px;margin-top:4px;text-align:center;"><b>Seat</b></p><hr size="1"/><p style="margin:0 0 0 4px;line-height:1.6;">+ getSeatID(): String<br/>+ setSeatClass(String): void<br/>+ getPassengerName(): String<br/>+ getSeatClass(): String<br/>+ setSeatID(String): void<br/>+ setPassengerName(String): void</p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=14;fontFamily=Helvetica;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeWidth=1;">
<mxGeometry x="475" y="1297" width="248" height="230" as="geometry" />
</mxCell>
<mxCell id="node6" parent="1" vertex="1" value="<p style="margin:0px;margin-top:4px;text-align:center;"><b>SecurityService</b></p><hr size="1"/><p style="margin:0 0 0 4px;line-height:1.6;">+ hash(String): String</p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=14;fontFamily=Helvetica;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeWidth=1;">
<mxGeometry x="1897" y="1803" width="187" height="82" as="geometry" />
</mxCell>
<mxCell id="node35" parent="1" vertex="1" value="<p style="margin:0px;margin-top:4px;text-align:center;"><b>SingleStopOver</b></p><hr size="1"/><p style="margin:0 0 0 4px;line-height:1.6;">+ setSecondFlight(Flight): void<br/>+ getFirstFlight(): Flight<br/>+ setFirstFlight(Flight): void<br/>+ getSecondFlight(): Flight</p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=14;fontFamily=Helvetica;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeWidth=1;">
<mxGeometry x="1062" y="1572" width="227" height="164" as="geometry" />
</mxCell>
<mxCell id="node14" parent="1" vertex="1" value="<p style="margin:0px;margin-top:4px;text-align:center;"><b>Staff</b></p><hr size="1"/>" style="verticalAlign=top;align=left;overflow=fill;fontSize=14;fontFamily=Helvetica;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeWidth=1;">
<mxGeometry x="2045" y="332" width="88" height="30" as="geometry" />
</mxCell>
<mxCell id="node30" parent="1" vertex="1" value="<p style="margin:0px;margin-top:4px;text-align:center;"><b>State</b></p><hr size="1"/><p style="margin:0 0 0 4px;line-height:1.6;">+ getStateID(): int<br/>+ setCountryName(String): void<br/>+ setStateID(int): void<br/>+ getCountryName(): String</p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=14;fontFamily=Helvetica;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeWidth=1;">
<mxGeometry x="784" y="1572" width="233" height="164" as="geometry" />
</mxCell>
<mxCell id="node29" parent="1" vertex="1" value="<p style="margin:0px;margin-top:4px;text-align:center;"><b>UserAccount</b></p><hr size="1"/><p style="margin:0 0 0 4px;line-height:1.6;">+ setEmail(String): void<br/>+ getEmail(): String<br/>+ getPassword(): String<br/>+ setPassword(String): void<br/>+ getPreferredAirport(): String<br/>+ setFirstname(String): void<br/>+ getFirstname(): String<br/>+ setPreferredAirport(String): void</p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=14;fontFamily=Helvetica;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeWidth=1;">
<mxGeometry x="1964" y="-14" width="249" height="296" as="geometry" />
</mxCell>
<mxCell id="node28" parent="1" vertex="1" value="<p style="margin:0px;margin-top:4px;text-align:center;"><i>&lt;&lt;interface&gt;&gt;</i><br/><b>UserAccountRepo</b></p><hr size="1"/>" style="verticalAlign=top;align=left;overflow=fill;fontSize=14;fontFamily=Helvetica;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeWidth=1;">
<mxGeometry x="1372" y="2011" width="192" height="35" as="geometry" />
</mxCell>
<mxCell id="node12" parent="1" vertex="1" value="<p style="margin:0px;margin-top:4px;text-align:center;"><b>UserAccountServices</b></p><hr size="1"/><p style="margin:0 0 0 4px;line-height:1.6;">+ saveOrUpdate(UserAccount): UserAccount<br/>+ listAll(): List&lt;UserAccount&gt;<br/>+ getById(String): UserAccount<br/>+ delete(String): void</p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=14;fontFamily=Helvetica;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeWidth=1;">
<mxGeometry x="390" y="1803" width="315" height="142" as="geometry" />
</mxCell>
<mxCell id="node26" parent="1" vertex="1" value="<p style="margin:0px;margin-top:4px;text-align:center;"><b>UserGroup</b></p><hr size="1"/><p style="margin:0 0 0 4px;line-height:1.6;">+ getAdminID(): String<br/>+ removeUser(String): void<br/>+ getUserIDs(): LinkedList&lt;String&gt;<br/>+ setUserIDs(LinkedList&lt;String&gt;): void<br/>+ addUser(String): void<br/>+ setAdminID(String): void</p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=14;fontFamily=Helvetica;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeWidth=1;">
<mxGeometry x="-150" y="1297" width="278" height="230" as="geometry" />
</mxCell>
<mxCell id="node20" parent="1" vertex="1" value="<p style="margin:0px;margin-top:4px;text-align:center;"><i>&lt;&lt;interface&gt;&gt;</i><br/><b>UserGroupRepo</b></p><hr size="1"/>" style="verticalAlign=top;align=left;overflow=fill;fontSize=14;fontFamily=Helvetica;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeWidth=1;">
<mxGeometry x="1609" y="2011" width="175" height="35" as="geometry" />
</mxCell>
<mxCell id="node11" parent="1" vertex="1" value="<p style="margin:0px;margin-top:4px;text-align:center;"><b>UserGroupServices</b></p><hr size="1"/><p style="margin:0 0 0 4px;line-height:1.6;">+ getAdmin(String): UserAccount<br/>+ addUser(String): void<br/>+ removeUser(String): void<br/>+ loadUserGroup(String): void<br/>+ saveUsers(UserGroup): void<br/>+ listAllUsers(): LinkedList&lt;UserAccount&gt;</p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=14;fontFamily=Helvetica;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeWidth=1;">
<mxGeometry x="1755" y="890" width="296" height="230" as="geometry" />
</mxCell>
<mxCell id="node24" parent="1" vertex="1" value="<p style="margin:0px;margin-top:4px;text-align:center;"><b>UserRegister</b></p><hr size="1"/><p style="margin:0 0 0 4px;line-height:1.6;">+ getAddress(): String<br/>+ isValid(): boolean<br/>+ setFirstname(String): void<br/>+ getFirstname(): String<br/>+ setEmail(String): void<br/>+ setAddress(String): void<br/>+ getPrefAirport(): String<br/>+ setPassword(String): void<br/>+ setConfirmpassword(String): void<br/>+ setPrefAirport(String): void<br/>+ getPassword(): String<br/>+ getEmail(): String<br/>+ allFilled(): boolean<br/>+ getConfirmpassword(): String</p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=14;fontFamily=Helvetica;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeWidth=1;">
<mxGeometry x="1382" y="-14" width="257" height="494" as="geometry" />
</mxCell>
<mxCell id="node27" parent="1" vertex="1" value="<p style="margin:0px;margin-top:4px;text-align:center;"><b>UserSession</b></p><hr size="1"/><p style="margin:0 0 0 4px;line-height:1.6;">+ isLoggedIn(): boolean<br/>+ getEmail(): String<br/>+ getUsr(): UserAccount<br/>+ getFirstname(): String<br/>+ getPassword(): String</p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=14;fontFamily=Helvetica;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeWidth=1;">
<mxGeometry x="1601" y="1572" width="187" height="164" as="geometry" />
</mxCell>
<mxCell id="edge0" edge="1" value="" parent="1" source="node14" target="node29" style="html=1;rounded=1;edgeStyle=orthogonalEdgeStyle;dashed=0;startArrow=none;endArrow=block;endSize=12;strokeColor=#000082;exitX=0.500;exitY=0.002;exitDx=0;exitDy=0;entryX=0.500;entryY=1.000;entryDx=0;entryDy=0;">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<Array as="points" />
</mxGeometry>
</mxCell>
</root>
</mxGraphModel>