Hexagonal pattern: Improve error handling in console lottery
This commit is contained in:
parent
3cf2b34d2a
commit
c4c5e78e50
@ -79,17 +79,21 @@ public class ConsoleLottery {
|
|||||||
PlayerDetails details = PlayerDetails.create(email, account, phone);
|
PlayerDetails details = PlayerDetails.create(email, account, phone);
|
||||||
System.out.println("Give 4 comma separated lottery numbers?");
|
System.out.println("Give 4 comma separated lottery numbers?");
|
||||||
String numbers = readString(scanner);
|
String numbers = readString(scanner);
|
||||||
String[] parts = numbers.split(",");
|
try {
|
||||||
Set<Integer> chosen = new HashSet<>();
|
String[] parts = numbers.split(",");
|
||||||
for (int i = 0; i < 4; i++) {
|
Set<Integer> chosen = new HashSet<>();
|
||||||
chosen.add(Integer.parseInt(parts[i]));
|
for (int i = 0; i < 4; i++) {
|
||||||
}
|
chosen.add(Integer.parseInt(parts[i]));
|
||||||
LotteryNumbers lotteryNumbers = LotteryNumbers.create(chosen);
|
}
|
||||||
LotteryTicket lotteryTicket = LotteryTicket.create(new LotteryTicketId(), details, lotteryNumbers);
|
LotteryNumbers lotteryNumbers = LotteryNumbers.create(chosen);
|
||||||
Optional<LotteryTicketId> id = service.submitTicket(lotteryTicket);
|
LotteryTicket lotteryTicket = LotteryTicket.create(new LotteryTicketId(), details, lotteryNumbers);
|
||||||
if (id.isPresent()) {
|
Optional<LotteryTicketId> id = service.submitTicket(lotteryTicket);
|
||||||
System.out.println("Submitted lottery ticket with id: " + id.get());
|
if (id.isPresent()) {
|
||||||
} else {
|
System.out.println("Submitted lottery ticket with id: " + id.get());
|
||||||
|
} else {
|
||||||
|
System.out.println("Failed submitting lottery ticket - please try again.");
|
||||||
|
}
|
||||||
|
} catch (Exception e) {
|
||||||
System.out.println("Failed submitting lottery ticket - please try again.");
|
System.out.println("Failed submitting lottery ticket - please try again.");
|
||||||
}
|
}
|
||||||
} else if (cmd.equals("4")) {
|
} else if (cmd.equals("4")) {
|
||||||
@ -97,19 +101,23 @@ public class ConsoleLottery {
|
|||||||
String id = readString(scanner);
|
String id = readString(scanner);
|
||||||
System.out.println("Give the 4 comma separated winning numbers?");
|
System.out.println("Give the 4 comma separated winning numbers?");
|
||||||
String numbers = readString(scanner);
|
String numbers = readString(scanner);
|
||||||
String[] parts = numbers.split(",");
|
try {
|
||||||
Set<Integer> winningNumbers = new HashSet<>();
|
String[] parts = numbers.split(",");
|
||||||
for (int i = 0; i < 4; i++) {
|
Set<Integer> winningNumbers = new HashSet<>();
|
||||||
winningNumbers.add(Integer.parseInt(parts[i]));
|
for (int i = 0; i < 4; i++) {
|
||||||
}
|
winningNumbers.add(Integer.parseInt(parts[i]));
|
||||||
LotteryTicketCheckResult result = service.checkTicketForPrize(
|
}
|
||||||
new LotteryTicketId(Integer.parseInt(id)), LotteryNumbers.create(winningNumbers));
|
LotteryTicketCheckResult result = service.checkTicketForPrize(
|
||||||
if (result.getResult().equals(LotteryTicketCheckResult.CheckResult.WIN_PRIZE)) {
|
new LotteryTicketId(Integer.parseInt(id)), LotteryNumbers.create(winningNumbers));
|
||||||
System.out.println("Congratulations! The lottery ticket has won!");
|
if (result.getResult().equals(LotteryTicketCheckResult.CheckResult.WIN_PRIZE)) {
|
||||||
} else if (result.getResult().equals(LotteryTicketCheckResult.CheckResult.NO_PRIZE)) {
|
System.out.println("Congratulations! The lottery ticket has won!");
|
||||||
System.out.println("Unfortunately the lottery ticket did not win.");
|
} else if (result.getResult().equals(LotteryTicketCheckResult.CheckResult.NO_PRIZE)) {
|
||||||
} else {
|
System.out.println("Unfortunately the lottery ticket did not win.");
|
||||||
System.out.println("Such lottery ticket has not been submitted.");
|
} else {
|
||||||
|
System.out.println("Such lottery ticket has not been submitted.");
|
||||||
|
}
|
||||||
|
} catch (Exception e) {
|
||||||
|
System.out.println("Failed checking the lottery ticket - please try again.");
|
||||||
}
|
}
|
||||||
} else if (cmd.equals("5")) {
|
} else if (cmd.equals("5")) {
|
||||||
exit = true;
|
exit = true;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user