-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathtestUserJSON.java
More file actions
135 lines (107 loc) · 3.95 KB
/
Copy pathtestUserJSON.java
File metadata and controls
135 lines (107 loc) · 3.95 KB
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
135
import java.util.ArrayList;
import java.util.Scanner;
import java.util.UUID;
public class testUserJSON {
private Scanner scanner;
public testUserJSON() {
scanner = new Scanner(System.in);
}
public void play() {
Users users = Users.getInstance();
Cars cars = Cars.getInstance();
Flights flights = Flights.getInstance();
Hotels hotels = Hotels.getInstance();
System.out.println("***** Current Users *****");
displayUsers();
while(addUser()) {
UUID userID = UUID.randomUUID();
RegistrationInfo userInfo = getUserInfo();
clear();
BookingList savedBookings = new BookingList();
clear();
// fillWithBookings(savedBookings);
ArrayList<PartyMember> partyMembers = new ArrayList<>();
// fillWithPartyMembers(partyMembers);
clear();
users.addRegisteredUser(userID, userInfo, savedBookings, partyMembers);
}
System.out.println("***** Your updated list of users *****");
displayUsers();
users.logout();
cars.logout();
flights.logout();
hotels.logout();
System.out.println("\nSee ya later!");
}
private void fillWithBookings(BookingList savedBookings) {
Cars cars = Cars.getInstance();
Flights flights = Flights.getInstance();
Hotels hotels = Hotels.getInstance();
testFlightJSON tesFlight = new testFlightJSON();
testCarJSON tesCar = new testCarJSON();
testHotelJSON tesHot = new testHotelJSON();
Car c1 = tesCar.getCar();
clear();
Flight f1 = tesFlight.getFlight();
f1.setUserSeats(tesFlight.chooseSeats(f1));
clear();
Hotel h1 = tesHot.getHotel();
clear();
cars.addCar(c1);
flights.addFlight(f1);
hotels.addHotel(h1);
savedBookings.getCarList().add(c1);
savedBookings.getFlightList().add(f1);
savedBookings.getHotelBookings().add(h1);
}
private String getField(String prompt) {
System.out.print(prompt + ": ");
return scanner.nextLine();
}
private int getInt(String prompt) {
System.out.print(prompt + "Age: ");
int age = scanner.nextInt();
scanner.nextLine();
return age;
}
private RegistrationInfo getUserInfo() {
String firstName = getField("First Name");
String lastName = getField("Last Name");
String userName = getField("Username");
String password = getField("Password");
int age = getInt("");
return new RegistrationInfo(firstName, lastName, userName, password, age, false);
}
private PartyMember getPartyMember() {
String firstName = getField("Friend's First Name");
String lastName = getField("Friend's Last Name");
int age = getInt("Friend's ");
return new PartyMember(firstName, lastName, age);
}
private void fillWithPartyMembers(ArrayList<PartyMember> partyMembers) {
PartyMember temp = getPartyMember();
partyMembers.add(temp);
}
private boolean addUser() {
System.out.print("Would you like to add a new user? (Y or N): ");
String input = scanner.nextLine();
if(input.toLowerCase().trim().equals("y")) return true;
return false;
}
public void displayUsers() {
Users users = Users.getInstance();
ArrayList<RegisteredUser> userList = users.getRegisteredUsers();
for (RegisteredUser user : userList) {
System.out.println(user.getUserInfo());
// System.out.println(user.getSavedBookings().getFlightList().get(0).getUserSeats());
user.getSavedBookings().printFlights();
}
}
private void clear() {
System.out.print("\033[H\033[2J");
}
public static void main(String[] args) {
testUserJSON test = new testUserJSON();
test.play();
}
}