private void makeSale(final PaymentMode mode) throws JMSException { final SaleTO saleTO = this.createSaleTO(); // // Request the store inventory system to account for the sale. // This uses JMS so that the notification can be asynchronous // and the message persisted. // this.sendAccountSaleEvent(saleTO); // // Notify cash desk components that sale has been successful. // this.sendSaleSuccessEvent(); // // Notify the coordinator about the sale, providing basic statistics. // this.sendSaleRegisteredEvent(saleTO.getProductTOs().size(), mode); }
private SaleTO createSaleTO() { final SaleTO saleTO = new SaleTO(); saleTO.setDate(new Date()); saleTO.setProductTOs(this.saleProducts); return saleTO; }