UI erweitert um Letzten Fehler auslesen! Exception Handling in UI.

master
Milan Lukic 2023-01-06 14:40:56 +01:00
parent 8bbe608c0c
commit 4d28be7a18
4 changed files with 56 additions and 37 deletions

View File

@ -11,7 +11,7 @@ public class R2D2 extends Roboter {
private int id; private int id;
//private static int idZähler = 0; //private static int idZähler = 0;
private RobotType robotType; private RobotType robotType;
RobotException fehler; //RobotException fehler;
public R2D2(String name, int id) { public R2D2(String name, int id) {
super(name); super(name);

View File

@ -66,4 +66,8 @@ public RobotFactory (String name) {
return ausgabe; return ausgabe;
} }
public RobotException letzterFehler(int id) {
Roboter r = findeRoboter(id);
return r.getLastException();
}
} }

View File

@ -45,5 +45,8 @@ public class Factorysystem {
return ausgabe; return ausgabe;
} }
public RobotException fehlerAuslesen(int id) {
return robotFactory.letzterFehler(id);
}
} }

View File

@ -34,7 +34,6 @@ public class Factory {
int input = Integer.parseInt(sc.nextLine()); int input = Integer.parseInt(sc.nextLine());
System.out.println(); System.out.println();
switch (input) { switch (input) {
case 0: case 0:
roboterAnzeigen(); roboterAnzeigen();
@ -48,7 +47,6 @@ public class Factory {
case 9: case 9:
break mainloop; break mainloop;
} }
System.out.println(); System.out.println();
@ -81,11 +79,11 @@ public class Factory {
System.out.println("1 -> Zustand abfragen"); System.out.println("1 -> Zustand abfragen");
System.out.println("2 -> AN/AUS machen"); System.out.println("2 -> AN/AUS machen");
System.out.println("3 -> Roboter sprechen lassen"); System.out.println("3 -> Roboter sprechen lassen");
System.out.println("4 -> Letzte Fehlermeldung auslesen");
System.out.println("9 -> Zurück ins Hauptmenü"); System.out.println("9 -> Zurück ins Hauptmenü");
System.out.print("> "); System.out.print("> ");
int input = Integer.parseInt(sc.nextLine()); int input = Integer.parseInt(sc.nextLine());
switch (input) { switch (input) {
case 1: case 1:
zustandAbfragen(id); zustandAbfragen(id);
@ -96,11 +94,13 @@ public class Factory {
case 3: case 3:
sprechen(id); sprechen(id);
break; break;
case 4:
letzteFehlermeldung(id);
break;
case 9: case 9:
break loop; break loop;
} }
} }
} }
@ -122,8 +122,8 @@ public class Factory {
} }
} }
private void sprechen(int id) throws RobotException { private void sprechen(int id) {
ArrayList <Integer> zahlenHinzufügen = new ArrayList<>(); ArrayList<Integer> zahlenHinzufügen = new ArrayList<>();
System.out.println("Geben Sie ein Array an!"); System.out.println("Geben Sie ein Array an!");
System.out.println(); System.out.println();
System.out.println("Geben Sie die 1. Zahl an!"); System.out.println("Geben Sie die 1. Zahl an!");
@ -145,8 +145,15 @@ public class Factory {
weiter = false; weiter = false;
int[] zahlen = zahlenHinzufügen.stream().mapToInt(j -> j).toArray(); int[] zahlen = zahlenHinzufügen.stream().mapToInt(j -> j).toArray();
String ausgabe = factorysystem.sprechenAufruf(id, zahlen); String ausgabe;
try {
ausgabe = factorysystem.sprechenAufruf(id, zahlen);
System.out.println("Ausgabe: " + ausgabe); System.out.println("Ausgabe: " + ausgabe);
} catch (RobotException e) {
System.out.println("Fehler! Bitte den letzten Fehler auslesen!");
//e.printStackTrace();
}
} }
@ -154,4 +161,9 @@ public class Factory {
} }
private void letzteFehlermeldung(int id) {
System.out.println (factorysystem.fehlerAuslesen(id));
}
} }