package domain; import robot.exceptions.RobotException; import robot.exceptions.robotExceptions; import java.util.Arrays; import java.util.stream.Collectors; public class C3PO extends RobotBasics { public C3PO(int id, String name){ super(id, name); } // public String ausgabe(int[] input) throws RobotException{ // if(input.length != 0 && !checkArray(input)){ // return Arrays.stream(input) // .mapToObj(Integer::toString) // .collect(Collectors.joining("; ")); // }else{ // throw new RobotException(robotExceptions.MAGICVALUE, getName()); // // throw new RobotMagicValueException(getName() + " has an unknown Error. Code 42."); // } // } @Override public String speak(int[] input) throws RobotException { if(isPowerOn()){ try{ return ausgabe(input, ";"); }catch(RobotException re){ return re.toString(); } }else{ throw new RobotException(robotExceptions.ILLEGALSTATE, getName()); //throw new RobotIllegalStateException(getName() + " is turned off."); } } public int[] sorting(int[] input) throws RobotException{ if(input.length != 0 ){ if(checkArray(input)){ return insertionSort(input); }else{ throw new RobotException(robotExceptions.MAGICVALUE, getName()); //throw new RobotMagicValueException(getName() + " has an unknown error. Code 42"); } } return new int[0]; } @Override public int[] think(int[] input) throws RobotException { //Insertionsort if(isPowerOn()){ return sorting(input); }else{ throw new RobotException(robotExceptions.ILLEGALSTATE, getName()); // throw new RobotIllegalStateException(getName() + " is turned off."); } } }