Package Domäne

Class RobotFactory

java.lang.Object
Domäne.RobotFactory

public class RobotFactory extends Object
Factory-Klasse für R2D2 und C3PO
Author:
Kai-Niklas Dippold
  • Constructor Summary

    Constructors
    Constructor
    Description
    Benennt die RobotFactory und setzt Nexus-Roboter "Pris" ins Roboterlager
  • Method Summary

    Modifier and Type
    Method
    Description
    int
    addRobot(RobotType robotType, String name)
    Erstellt neue Roboter nach Anforderungen, speichert diese im Roboterlager und gibt die Id des erstellten Roboters zurück
    aufrufSpeakAndThink(int id, int[] zahlen)
    Ruft die Methoden think() und speak() eines Roboters auf und gibt dessen Ausgabe wieder.
    Gibt die Daten eines Roboters wieder
    findeRoboter(int id)
    Duchsucht das Roboterlager nach einem bestimmten Roboter
    Gibt den Namen der RobotFactory zurück.
    int
    Gibt die Größe des Roboterlagers an.
    boolean
    Überprüft ob das Lager einen bestimmten Roboter enthält.
    letzterFehler(int id)
    Gibt den letzten Fehler zurück, auf den der Roboter gestoßen ist
    boolean
    Prüft ob ein Roboter ein- oder ausgeschaltet ist
    boolean
    schalterAnAus(int id)
    Schaltet einen Roboter ein wenn er ausgeschaltet ist und schaltet ihn aus wenn er eingeschaltet ist

    Methods inherited from class java.lang.Object

    equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • RobotFactory

      public RobotFactory(String name)
      Benennt die RobotFactory und setzt Nexus-Roboter "Pris" ins Roboterlager
      Parameters:
      name - Name der RobotFactory
  • Method Details

    • addRobot

      public int addRobot(RobotType robotType, String name)
      Erstellt neue Roboter nach Anforderungen, speichert diese im Roboterlager und gibt die Id des erstellten Roboters zurück
      Parameters:
      robotType - entweder R2D2 oder C3PO
      name - Name des Roboters
      Returns:
      Gibt die ID des erstellten Roboters zurück.
    • getName

      public String getName()
      Gibt den Namen der RobotFactory zurück.
      Returns:
      Name der RobotFactory
    • findeRoboter

      public Roboter findeRoboter(int id)
      Duchsucht das Roboterlager nach einem bestimmten Roboter
      Parameters:
      id - Id des Roboters
      Returns:
      Instanz des Roboters mit der gefragten Id
    • roboterZustand

      public boolean roboterZustand(int id)
      Prüft ob ein Roboter ein- oder ausgeschaltet ist
      Parameters:
      id - Id des Roboters
      Returns:
      Zustand des Roboters
    • schalterAnAus

      public boolean schalterAnAus(int id)
      Schaltet einen Roboter ein wenn er ausgeschaltet ist und schaltet ihn aus wenn er eingeschaltet ist
      Parameters:
      id - Id des Roboters
      Returns:
      Zustand des Roboters
    • aufrufSpeakAndThink

      public String aufrufSpeakAndThink(int id, int[] zahlen) throws RobotException
      Ruft die Methoden think() und speak() eines Roboters auf und gibt dessen Ausgabe wieder.
      Parameters:
      id - Id des Roboters
      zahlen - Int-Array
      Returns:
      String mit dem Inhalt des gegebenen Arrays, nachdem es von dem Roboter sortiert wurde.
      Throws:
      RobotException
    • letzterFehler

      public RobotException letzterFehler(int id)
      Gibt den letzten Fehler zurück, auf den der Roboter gestoßen ist
      Parameters:
      id - Id des Roboters
      Returns:
      Die RobotException welche im Roboter gespeichert ist
    • datenDesRoboters

      public String datenDesRoboters(int id)
      Gibt die Daten eines Roboters wieder
      Parameters:
      id - Id des Roboters
      Returns:
      String mit Typ, Namen und Id des Roboters
    • getRoboterLagerSize

      public int getRoboterLagerSize()
      Gibt die Größe des Roboterlagers an.
      Returns:
      Größe des Roboterlagers
    • istDieserRoboterDa

      public boolean istDieserRoboterDa(int id)
      Überprüft ob das Lager einen bestimmten Roboter enthält.
      Parameters:
      id - Id des Roboters
      Returns:
      true oder false je nachdem ob der Roboter im Lager vorhanden ist