Alle gefundenen Ausnahmen die der User auslösen kann werden gecatcht.
parent
32e22a1b48
commit
b8de76edc5
|
@ -7,7 +7,7 @@ import tpe.exceptions.roboter.exceptions.RobotException;
|
|||
public class RobotFactory {
|
||||
private String name;
|
||||
private Roboter pris = Nexus6.getInstance();
|
||||
private HashMap <Integer, Roboter> roboterLager = new HashMap<>();
|
||||
private static HashMap <Integer, Roboter> roboterLager = new HashMap<>();
|
||||
|
||||
public RobotFactory (String name) {
|
||||
this.name = name;
|
||||
|
@ -86,4 +86,8 @@ public RobotFactory (String name) {
|
|||
public int getRoboterLagerSize() {
|
||||
return roboterLager.size();
|
||||
}
|
||||
|
||||
public static boolean istDieserRoboterDa(int id) {
|
||||
return roboterLager.containsKey(id);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -53,4 +53,9 @@ public class Factorysystem {
|
|||
public String roboterDaten (int id) {
|
||||
return robotFactory.datenDesRoboters(id);
|
||||
}
|
||||
|
||||
public static boolean istDieserRoboterDa(int id) {
|
||||
boolean istDa = RobotFactory.istDieserRoboterDa(id);
|
||||
return istDa;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -18,7 +18,7 @@ public class Factory {
|
|||
}
|
||||
|
||||
private void hauptmenü() throws RobotException {
|
||||
|
||||
int input = 0;
|
||||
mainloop: while (true) {
|
||||
System.out.println();
|
||||
System.out.println("========");
|
||||
|
@ -28,9 +28,16 @@ public class Factory {
|
|||
System.out.println("9 -> Beenden");
|
||||
System.out.println();
|
||||
|
||||
while (true) {
|
||||
System.out.println("> ");
|
||||
int input = Integer.parseInt(sc.nextLine());
|
||||
try {
|
||||
input = Integer.parseInt(sc.nextLine());
|
||||
System.out.println();
|
||||
break;
|
||||
} catch (Exception e) {
|
||||
System.out.println("Bitte eine passende Zahl eingeben");
|
||||
}
|
||||
}
|
||||
|
||||
switch (input) {
|
||||
case 1:
|
||||
|
@ -47,25 +54,28 @@ public class Factory {
|
|||
|
||||
}
|
||||
|
||||
System.out.println("Programm beendet!");
|
||||
}
|
||||
|
||||
private void roboterBauen() {
|
||||
int auswahl;
|
||||
String name;
|
||||
while(true) {
|
||||
while (true) {
|
||||
try {
|
||||
System.out.println("Welchen Robotertyp möchten Sie haben?(R2D2(1) oder C3PO (2)");
|
||||
auswahl = Integer.parseInt(sc.nextLine());
|
||||
if (auswahl == 1 || auswahl == 2) break;
|
||||
} catch(Exception e) {
|
||||
if (auswahl == 1 || auswahl == 2)
|
||||
break;
|
||||
} catch (Exception e) {
|
||||
System.out.println("Bitte 1 oder 2 eingeben");
|
||||
}
|
||||
}
|
||||
|
||||
while(true) {
|
||||
while (true) {
|
||||
System.out.println("Wie wollen Sie ihren Roboter nennen?");
|
||||
name = sc.nextLine();
|
||||
if (!name.isBlank())break;
|
||||
if (!name.isBlank())
|
||||
break;
|
||||
}
|
||||
|
||||
int seriennummer = factorysystem.roboterAnlegen(name, auswahl);
|
||||
|
@ -74,8 +84,21 @@ public class Factory {
|
|||
}
|
||||
|
||||
private void roboterAuswählen() throws RobotException {
|
||||
int id;
|
||||
while (true) {
|
||||
try {
|
||||
System.out.println("Geben Sie bitte die Seriennummer ein: ");
|
||||
int id = Integer.parseInt(sc.nextLine());
|
||||
id = Integer.parseInt(sc.nextLine());
|
||||
if (istDieserRoboterDa(id)) {
|
||||
break;
|
||||
} else {
|
||||
System.out.println("Dieser Roboter wurde nicht gefunden");
|
||||
return;
|
||||
}
|
||||
} catch (Exception e) {
|
||||
System.out.println("Bitte eine Nummer eingeben");
|
||||
}
|
||||
}
|
||||
|
||||
loop: while (true) {
|
||||
System.out.println("Wählen Sie eine Aktion aus!");
|
||||
|
@ -86,8 +109,8 @@ public class Factory {
|
|||
System.out.println("5 -> Daten abrufen");
|
||||
System.out.println("9 -> Zurück ins Hauptmenü");
|
||||
System.out.print("> ");
|
||||
try {
|
||||
int input = Integer.parseInt(sc.nextLine());
|
||||
|
||||
switch (input) {
|
||||
case 1:
|
||||
zustandAbfragen(id);
|
||||
|
@ -101,13 +124,22 @@ public class Factory {
|
|||
case 4:
|
||||
letzteFehlermeldung(id);
|
||||
break;
|
||||
case 5: datenAbruf(id); break;
|
||||
case 5:
|
||||
datenAbruf(id);
|
||||
break;
|
||||
case 9:
|
||||
break loop;
|
||||
}
|
||||
|
||||
} catch (Exception e) {
|
||||
System.out.println("Bitte eine passende Zahl eingeben.");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private boolean istDieserRoboterDa(int id) {
|
||||
boolean istDa = Factorysystem.istDieserRoboterDa(id);
|
||||
return istDa;
|
||||
}
|
||||
|
||||
private void zustandAbfragen(int id) {
|
||||
boolean zustand = factorysystem.zustandRoboter(id);
|
||||
|
@ -156,10 +188,9 @@ public class Factory {
|
|||
System.out.println("Ausgabe: " + ausgabe);
|
||||
} catch (RobotException e) {
|
||||
System.out.println("Fehler! Bitte den letzten Fehler auslesen!");
|
||||
//e.printStackTrace();
|
||||
// e.printStackTrace();
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -167,7 +198,7 @@ public class Factory {
|
|||
}
|
||||
|
||||
private void letzteFehlermeldung(int id) {
|
||||
System.out.println (factorysystem.fehlerAuslesen(id));
|
||||
System.out.println(factorysystem.fehlerAuslesen(id));
|
||||
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue