diff --git a/order.py b/order.py index 0c3afba..3524ca4 100644 --- a/order.py +++ b/order.py @@ -11,8 +11,9 @@ ADDITION_HEADER = "Accept-Additions" class Order(object): - def __init__(self, name): + def __init__(self, name, type): self.name = name + self.type = type self.milk = "None" self.syrup = "None" self.alcohol = "None" @@ -38,4 +39,4 @@ class Order(object): self.alcohol = ad def json_dump(self): - return json.dumps([{'name': self.name}, {'milk': self.milk}, {'syrup': self.syrup}, {'alcohol': self.alcohol}]) + return json.dumps([{'name': self.name}, {'type': self.type}, {'milk': self.milk}, {'syrup': self.syrup}, {'alcohol': self.alcohol}]) diff --git a/pots.py b/pots.py index 611c4fd..80a53bc 100644 --- a/pots.py +++ b/pots.py @@ -8,46 +8,60 @@ class Pot(object): def __init__(self, name): self.name = name + self.queuedOrders = [] def get(self): - return "GET REQUEST RECEIVED" + if self.queuedOrders: + return self.queuedOrders[0].json_dump() + else: + return {} + + def getOrderCount(self): + return str(len(self.queuedOrders)) + + def popOrder(self): + if self.queuedOrders: + requestedOrder = self.queuedOrders.pop() + return requestedOrder.json_dump() + else: + return {} def when(self): - return "WHEN REQUEST RECEIVED" + return 'WHEN REQUEST RECEIVED' def brew(self, headers): - return "BREW REQUEST RECEIVED" + return 'BREW REQUEST RECEIVED' class CoffeePot(Pot): def __init__(self, name): super(CoffeePot, self).__init__(name) - self.coffeeOrders = [] - print("Coffee pot initialised") + print('Coffee pot initialised') def brew(self, headers): - print("Brewing coffee") - new_order = order.Order("NewOrder") + print('Brewing coffee') + new_order = order.Order('NewOrderCoffee', 'Coffee') new_order.configure(headers) print(new_order.json_dump()) - self.coffeeOrders.append(new_order) - return "Brewing" + self.queuedOrders.append(new_order) + return 'Brewing' - def get(self): - if self.coffeeOrders: - return self.coffeeOrders[0].json_dump() - else: - return {} - - def popOrder(self): - if self.coffeeOrders: - requestedOrder = self.coffeeOrders.pop() - return requestedOrder.json_dump() - else: - return {} - - def getOrderCount(self): - return str(len(self.coffeeOrders)) +class TeaPot(Pot): + + def __init__(self, name): + super(TeaPot, self).__init__(name) + self.TeaOrders = [] + print('Tea Pot initialised') + + def brew(self, headers): + print('Brewing tea') + new_order = order.Order('NewOrderTea', 'Tea') + new_order.configure(headers) + print(new_order.json_dump()) + self.queuedOrders.append(new_order) + return 'Brewing' + +