@@ -79,37 +79,45 @@ public static void main(String[] args) {
7979 PlayerDetails details = PlayerDetails .create (email , account , phone );
8080 System .out .println ("Give 4 comma separated lottery numbers?" );
8181 String numbers = readString (scanner );
82- String [] parts = numbers .split ("," );
83- Set <Integer > chosen = new HashSet <>();
84- for (int i = 0 ; i < 4 ; i ++) {
85- chosen .add (Integer .parseInt (parts [i ]));
86- }
87- LotteryNumbers lotteryNumbers = LotteryNumbers .create (chosen );
88- LotteryTicket lotteryTicket = LotteryTicket .create (new LotteryTicketId (), details , lotteryNumbers );
89- Optional <LotteryTicketId > id = service .submitTicket (lotteryTicket );
90- if (id .isPresent ()) {
91- System .out .println ("Submitted lottery ticket with id: " + id .get ());
92- } else {
82+ try {
83+ String [] parts = numbers .split ("," );
84+ Set <Integer > chosen = new HashSet <>();
85+ for (int i = 0 ; i < 4 ; i ++) {
86+ chosen .add (Integer .parseInt (parts [i ]));
87+ }
88+ LotteryNumbers lotteryNumbers = LotteryNumbers .create (chosen );
89+ LotteryTicket lotteryTicket = LotteryTicket .create (new LotteryTicketId (), details , lotteryNumbers );
90+ Optional <LotteryTicketId > id = service .submitTicket (lotteryTicket );
91+ if (id .isPresent ()) {
92+ System .out .println ("Submitted lottery ticket with id: " + id .get ());
93+ } else {
94+ System .out .println ("Failed submitting lottery ticket - please try again." );
95+ }
96+ } catch (Exception e ) {
9397 System .out .println ("Failed submitting lottery ticket - please try again." );
9498 }
9599 } else if (cmd .equals ("4" )) {
96100 System .out .println ("What is the ID of the lottery ticket?" );
97101 String id = readString (scanner );
98102 System .out .println ("Give the 4 comma separated winning numbers?" );
99103 String numbers = readString (scanner );
100- String [] parts = numbers .split ("," );
101- Set <Integer > winningNumbers = new HashSet <>();
102- for (int i = 0 ; i < 4 ; i ++) {
103- winningNumbers .add (Integer .parseInt (parts [i ]));
104- }
105- LotteryTicketCheckResult result = service .checkTicketForPrize (
106- new LotteryTicketId (Integer .parseInt (id )), LotteryNumbers .create (winningNumbers ));
107- if (result .getResult ().equals (LotteryTicketCheckResult .CheckResult .WIN_PRIZE )) {
108- System .out .println ("Congratulations! The lottery ticket has won!" );
109- } else if (result .getResult ().equals (LotteryTicketCheckResult .CheckResult .NO_PRIZE )) {
110- System .out .println ("Unfortunately the lottery ticket did not win." );
111- } else {
112- System .out .println ("Such lottery ticket has not been submitted." );
104+ try {
105+ String [] parts = numbers .split ("," );
106+ Set <Integer > winningNumbers = new HashSet <>();
107+ for (int i = 0 ; i < 4 ; i ++) {
108+ winningNumbers .add (Integer .parseInt (parts [i ]));
109+ }
110+ LotteryTicketCheckResult result = service .checkTicketForPrize (
111+ new LotteryTicketId (Integer .parseInt (id )), LotteryNumbers .create (winningNumbers ));
112+ if (result .getResult ().equals (LotteryTicketCheckResult .CheckResult .WIN_PRIZE )) {
113+ System .out .println ("Congratulations! The lottery ticket has won!" );
114+ } else if (result .getResult ().equals (LotteryTicketCheckResult .CheckResult .NO_PRIZE )) {
115+ System .out .println ("Unfortunately the lottery ticket did not win." );
116+ } else {
117+ System .out .println ("Such lottery ticket has not been submitted." );
118+ }
119+ } catch (Exception e ) {
120+ System .out .println ("Failed checking the lottery ticket - please try again." );
113121 }
114122 } else if (cmd .equals ("5" )) {
115123 exit = true ;
0 commit comments