private void verifyStatus()

in sources/coffeeshop/orders-domain/src/main/java/solid/humank/coffeeshop/order/models/Order.java [157:165]


    private void verifyStatus(OrderStatus previousStatus, OrderStatus targetStatus) throws StatusTransitionException {
        if (this.status == targetStatus) return;

        Specification specification = new StatusTransitionSpec(this.status, previousStatus, targetStatus);
        if (specification.isSatisfy() == false) {
            String errorMessage = String.format("Cant not transit order status from %s to %s", status, targetStatus);
            throw new StatusTransitionException(errorMessage);
        }
    }