Ausnahmen speichern jetzt den Namen vom Roboter der sie entstanden ist

und kann mit der methode getRobotName() ausgelesen werden.
master
nikow 2023-01-05 17:18:25 +01:00
parent 98f688fa9d
commit 604fe74082
7 changed files with 39 additions and 12 deletions

View File

@ -30,7 +30,7 @@ public class C3PO extends Roboter {
if (isPowerOn() == true) {
for (int zahl : zahlen) {
if (zahl == 42) {
fehler = new RobotMagicValueException("Fehler! Zahl 42 im Array!");
fehler = new RobotMagicValueException("Fehler! Zahl 42 im Array!", this.name);
throw fehler;
}
}
@ -47,9 +47,10 @@ public class C3PO extends Roboter {
}
return zahlen;
} else
fehler = new RobotIllegalStateException("Roboter ausgeschaltet! Bitte einschalten.");
fehler = new RobotIllegalStateException("Roboter ausgeschaltet! Bitte einschalten.", this.name);
throw fehler;
}
}

View File

@ -8,7 +8,7 @@ public class Nexus6 extends Roboter {
String name;
int id;
RobotException fehler;
private static final Nexus6 PRIS = new Nexus6();
private static Nexus6 PRIS;
private Nexus6() {
@ -41,7 +41,7 @@ public class Nexus6 extends Roboter {
//Methode soll Fehler ausgeben, da der Roboter nicht Funktioniert.
@Override
public String speak(int[] zahlen) throws RobotException {
fehler = new RobotIllegalStateException ("Roboter ausgeschaltet und Defekt!");
fehler = new RobotIllegalStateException ("Roboter ausgeschaltet und Defekt!", this.name);
throw fehler;
}
@ -49,7 +49,7 @@ public class Nexus6 extends Roboter {
//Methode soll Fehler ausgeben, da der Roboter nicht Funktioniert.
@Override
public int[] think(int[] zahlen) throws RobotException {
fehler = new RobotIllegalStateException ("Roboter ausgeschaltet und Defekt!");
fehler = new RobotIllegalStateException ("Roboter ausgeschaltet und Defekt!", this.name);
throw fehler;

View File

@ -26,7 +26,7 @@ public class R2D2 extends Roboter {
if (isPowerOn() == true) {
for (int zahl : zahlen) {
if (zahl == 42) {
fehler = new RobotMagicValueException("Fehler! Zahl 42 im Array!");
fehler = new RobotMagicValueException("Fehler! Zahl 42 im Array!", this.name);
throw fehler;
}
}
@ -45,7 +45,7 @@ public class R2D2 extends Roboter {
}
return zahlen;
} else
fehler = new RobotIllegalStateException("Roboter ausgeschaltet! Bitte einschalten.");
fehler = new RobotIllegalStateException("Roboter ausgeschaltet! Bitte einschalten.", this.name);
throw fehler;
}

View File

@ -64,13 +64,13 @@ public abstract class Roboter implements Robot {
if (isPowerOn() == true) {
for (int zahl : zahlen) {
if (zahl == 42) {
fehler = new RobotMagicValueException("Fehler! Zahl 42 im Array!");
fehler = new RobotMagicValueException("Fehler! Zahl 42 im Array!", this.name);
throw fehler;
}
}
return prepare(zahlen);
} else
fehler = new RobotIllegalStateException("Roboter ausgeschaltet! Bitte einschalten.");
fehler = new RobotIllegalStateException("Roboter ausgeschaltet! Bitte einschalten.", this.name);
throw fehler;
}

View File

@ -2,6 +2,11 @@ package tpe.exceptions.roboter.exceptions;
public class RobotException extends Exception {
/**
*
*/
private static final long serialVersionUID = 1L;
public RobotException (String message) {
super(message);
}

View File

@ -1,8 +1,18 @@
package tpe.exceptions.roboter.exceptions;
public class RobotIllegalStateException extends RobotException {
/**
*
*/
private static final long serialVersionUID = 1L;
String name;
public RobotIllegalStateException (String message) {
public RobotIllegalStateException(String message, String name) {
super(message);
this.name = name;
}
public String getRobotName() {
return this.name;
}
}

View File

@ -2,7 +2,18 @@ package tpe.exceptions.roboter.exceptions;
public class RobotMagicValueException extends RobotException {
public RobotMagicValueException (String message) {
/**
*
*/
private static final long serialVersionUID = 1L;
String name;
public RobotMagicValueException (String message, String name) {
super(message);
this.name = name;
}
public String getRobotName() {
return this.name;
}
}