public void handleRequest()

in sources/coffeeshop/coffee-sls/src/main/java/solid/humank/coffeeshop/cofee/sls/orders/OrderCreatedHandler.java [32:58]


    public void handleRequest(InputStream inputStream, OutputStream outputStream, Context context) throws IOException {

        MakeCoffeeSvc service =
                new MakeCoffeeSvc(new CoffeeRepository(), new ConfirmInventorySvc(), new CoffeeItemsTranslator());

        DomainModelMapper mapper = new DomainModelMapper();
        OrderCreated orderCreated = mapper.readValue(inputStream, OrderCreated.class);
        logger.info(orderCreated.getVersion());
        logger.info(orderCreated.getId());
        logger.info(orderCreated.getDetailType());
        logger.info(orderCreated.getSource());
        logger.info(orderCreated.getAccount());
        logger.info(orderCreated.getTime());
        logger.info(orderCreated.getRegion());
        logger.info(orderCreated.getResources().toString());
        logger.info(orderCreated.getDetail().getTableNo());
        logger.info(orderCreated.getDetail().getEventId());
        logger.info(String.valueOf(orderCreated.getDetail().getOrderItems().size()));
        logger.info(orderCreated.getDetail().getEntityId().toString());

        //TODO : 調用咖啡師的服務, 參照需求文檔找製作美式咖啡的需求
        MakeCoffeeMsg cmd = new MakeCoffeeMsg(orderCreated.getDetail().getTableNo(), transformToCoffeeItemVM(orderCreated));
        service.make(cmd);

        context.getLogger().log("Coffee made...");
        outputStream.write("{\"status\":\"Coffee made!\"}".getBytes());
    }