diff --git a/Roboterfabrik/src/Domäne/C3PO.java b/Roboterfabrik/src/Domäne/C3PO.java index 13318f3..428639d 100644 --- a/Roboterfabrik/src/Domäne/C3PO.java +++ b/Roboterfabrik/src/Domäne/C3PO.java @@ -5,10 +5,10 @@ import tpe.exceptions.roboter.exceptions.RobotIllegalStateException; import tpe.exceptions.roboter.exceptions.RobotMagicValueException; public class C3PO extends Roboter { - String name; - int id; + private String name; + private int id; //static int idZähler = 10000; - RobotType robotType; + private RobotType robotType; RobotException fehler; public C3PO(String name, int id) { diff --git a/Roboterfabrik/src/Domäne/RobotFactory.java b/Roboterfabrik/src/Domäne/RobotFactory.java index 6ad3a9d..b5b2fdb 100644 --- a/Roboterfabrik/src/Domäne/RobotFactory.java +++ b/Roboterfabrik/src/Domäne/RobotFactory.java @@ -44,4 +44,16 @@ public RobotFactory (String name) { return randomValue; } + + public boolean roboterZustand(int id) { + Roboter r = findeRoboter(id); + boolean zustand = r.isPowerOn(); + return zustand; + } + public boolean schalterAnAus(int id){ + Roboter r = findeRoboter(id); + r.triggerPowerSwitch(); + boolean zustand = r.isPowerOn(); + return zustand; + } } diff --git a/Roboterfabrik/src/facade/Factorysystem.java b/Roboterfabrik/src/facade/Factorysystem.java index 7e6129e..367c9a6 100644 --- a/Roboterfabrik/src/facade/Factorysystem.java +++ b/Roboterfabrik/src/facade/Factorysystem.java @@ -31,5 +31,13 @@ public class Factorysystem { } + public boolean zustandRoboter (int id) { + return robotFactory.roboterZustand(id); + } + + public boolean schalterBetätigen(int id) { + return robotFactory.schalterAnAus(id); + } + } diff --git a/Roboterfabrik/src/main/Main.java b/Roboterfabrik/src/main/Main.java new file mode 100644 index 0000000..b423dab --- /dev/null +++ b/Roboterfabrik/src/main/Main.java @@ -0,0 +1,13 @@ +package main; + +import facade.Factorysystem; +import ui.Factory; + +public class Main { + + public static void main(String[] args) { + Factorysystem fs = new Factorysystem ("Robot Fabrik"); + Factory ui = new Factory (fs); + } + +} diff --git a/Roboterfabrik/src/ui/Factory.java b/Roboterfabrik/src/ui/Factory.java index 0ee2b2f..76e572c 100644 --- a/Roboterfabrik/src/ui/Factory.java +++ b/Roboterfabrik/src/ui/Factory.java @@ -6,12 +6,9 @@ import Domäne.C3PO; import Domäne.R2D2; import facade.Factorysystem; - - public class Factory { Scanner sc = new Scanner(System.in); private Factorysystem factorysystem; - public Factory(Factorysystem factorysystem) { this.factorysystem = factorysystem; @@ -26,6 +23,7 @@ public class Factory { System.out.println("Factory Hauptmenü"); System.out.println("0 -> Alle Roboter anzeigen"); System.out.println("1 -> Roboter bauen"); + System.out.println("2 -> Roboter auswählen"); System.out.println("9 -> Beenden"); System.out.println(); @@ -37,8 +35,13 @@ public class Factory { switch (input) { case 0: roboterAnzeigen(); + break; case 1: roboterBauen(); + break; + case 2: + roboterAuswählen(); + break; case 9: break mainloop; } @@ -62,17 +65,58 @@ public class Factory { System.out.println("Wie wollen Sie ihren Roboter nennen?"); String name = sc.nextLine(); - - int seriennummer = factorysystem.roboterAnlegen(name, auswahl); - System.out.println(name + " mit der Seriennummer: " + seriennummer + " wurde erstellt."); - - - - + + int seriennummer = factorysystem.roboterAnlegen(name, auswahl); + System.out.println(name + " mit der Seriennummer: " + seriennummer + " wurde erstellt."); } - - - + + private void roboterAuswählen() { + System.out.println("Geben Sie bitte die Seriennummer ein: "); + int id = Integer.parseInt(sc.nextLine()); + + loop: while (true) { + System.out.println("Wählen Sie eine Aktion aus!"); + System.out.println("1 -> Zustand abfragen"); + System.out.println("2 -> AN/AUS machen"); + System.out.println("9 -> Zurück ins Hauptmenü"); + System.out.print("> "); + int input = Integer.parseInt(sc.nextLine()); + + try { + switch (input) { + case 1: + zustandAbfragen(id); + break; + case 2: + schalterBetätigen(id); + break; + case 9: + break loop; + } + + } catch (Exception e) { + + } + } + } + + private void zustandAbfragen(int id) { + boolean zustand = factorysystem.zustandRoboter(id); + if (zustand == true) { + System.out.println("Der Roboter ist an!"); + } else if (zustand == false) { + System.out.println("Der Roboter ist aus!"); + } + } + + private void schalterBetätigen(int id) { + boolean zustand = factorysystem.schalterBetätigen(id); + if (zustand == true) { + System.out.println("Der Roboter wurde eingeschaltet!"); + } else if (zustand == false) { + System.out.println("Der Roboter wurde abgeschaltet!"); + } + } } \ No newline at end of file