/** * Delivers an order to a customer * * @param _order to be delivered */ public void deliverOrder(Order _order) { if (_order.getOrderStatus() != OrderStatus.cooked) { System.out.println( "Cashier.deliverOrder: Error order " + _order.getId() + " not completed " + _order.getOrderStatus()); return; } try { Thread.sleep(Constants.DELIVERY_TIME); DataPacket packet = new DataPacket(Function.SET_ORDER_DELIVERED); packet.order = _order; this.communicateWithServer(packet); this.client.update("Delivered order"); System.out.println( "Order " + _order.getId() + " delivered by " + this.getFirstName().charAt(0) + "." + this.getSurname()); } catch (Exception e) { System.out.println("Cashier.deliverOrder: Error exception " + e.getMessage()); } }