Package pos_system.models
Class OrderManager
java.lang.Object
pos_system.util.observer.Observable
pos_system.util.mvc.Model
pos_system.models.OrderManager
public class OrderManager
extends pos_system.util.mvc.Model
Der OrderManager verwaltet den Zustand über die aktuell laufende Bestellung. Es kann immer nur eine Bestellung
gleichzeitig aktiv sein. Auf diese Bestellung kann dann zugegriffen werden, um OrderItems hinzuzufügen. Bestellungen
können schlussendlich abgeschlossen werden, was diese zu jeweils einer
FinishedOrder umwandeln oder abgebrochen
werden.-
Nested Class Summary
Nested Classes -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddOrderItem(OrderItem item) Fügt ein OrderItem zu der aktuellen Bestellung hinzu.voidBricht die aktuelle Bestellung ab.Schließt die aktuelle Bestellung ab.Gibt die aktuell genutzte Bestellung zurück.booleanGibt die aktuell ausgewählte Option aus.Gibt das aktuell ausgewählte OrderItem aus.booleanBestimmt, ob eine Bestellugn existiert oder nicht.voidnewOrder()Erstellt eine neue Bestellung.voidremoveOrderItem(OrderItem item) Entfernt ein OrderItem von der aktuellen Bestellung hinzu.voidsetOptionHasFocus(boolean b) voidsetSelectedOption(OrderItem.Option option) Setzt die aktuell ausgewählte Option zu einem OrderItem.voidSetzt das aktuell ausgewählte OrderItem.Methods inherited from class pos_system.util.observer.Observable
addObserver
-
Constructor Details
-
OrderManager
public OrderManager()Erzeugt einen neuen OrderManager. Ein neu erzeugter OrderManager besitzt keine aktive Bestellung.
-
-
Method Details
-
newOrder
Erstellt eine neue Bestellung. Funktioniert nicht, wenn bereits eine Bestellung existiert. Diese muss zunächst abgebrochen oder fertiggestellt werden.- Throws:
OrderManager.NoOrderException- Wenn bereits eine Bestellung existiert.- See Also:
-
cancelOrder
public void cancelOrder()Bricht die aktuelle Bestellung ab. -
finishOrder
Schließt die aktuelle Bestellung ab. Funktioniert nicht, wenn keine Bestellung existiert.- Returns:
- Die immutable Bestellung.
- Throws:
OrderManager.NoOrderException- Wenn keine Bestellung existiert.- See Also:
-
getCurrentOrder
Gibt die aktuell genutzte Bestellung zurück. Wenn keine Bestellung existiert, wird null zurückgegeben.- Returns:
- Die aktuelle Bestellung oder null.
- See Also:
-
hasCurrentOrder
public boolean hasCurrentOrder()Bestimmt, ob eine Bestellugn existiert oder nicht.- Returns:
- true, wenn eine Bestellung existiert, sonst false.
-
addOrderItem
Fügt ein OrderItem zu der aktuellen Bestellung hinzu. Wenn item null ist, wird nichts hinzugefügt.- Parameters:
item- Das OrderItem, welches hinzugefügt werden soll.- Throws:
OrderManager.NoOrderException- Wenn keine Bestellung existiert.
-
removeOrderItem
Entfernt ein OrderItem von der aktuellen Bestellung hinzu. Wenn item null ist, wird nichts geändert.- Parameters:
item- Das OrderItem, welches entfernt werden soll.- Throws:
OrderManager.NoOrderException- Wenn keine Bestellung existiert.
-
setSelectedOrderItem
Setzt das aktuell ausgewählte OrderItem. Wenn item null ist ODER nicht in der Bestellung ist ODER keine Bestellung existiert, wird nichts getan.- Parameters:
item- OrderIem, welches ausgewählt werden soll.
-
getSelectedOrderItem
Gibt das aktuell ausgewählte OrderItem aus. Wenn aktuell kein item ausgewählt ist ODER keine Bestellung existiert, wird null zurückgegeben.- Returns:
- Das aktuell ausgewählte OrderItem oder null.
-
setSelectedOption
Setzt die aktuell ausgewählte Option zu einem OrderItem. Wenn option null ist ODER keine Bestellung existiert, wird nichts getan.- Parameters:
option- Option, welche ausgewählt werden soll.
-
getSelectedOption
Gibt die aktuell ausgewählte Option aus. Wenn aktuell keine option ausgewählt ist ODER keine Bestellung existiert, wird null zurückgegeben.- Returns:
- Das aktuell ausgewählte OrderItem oder null.
-
setOptionHasFocus
public void setOptionHasFocus(boolean b) -
getOptionHasFocus
public boolean getOptionHasFocus()
-