class ReservationCostCalculator {

    public BigDecimal calculateRateFor(RoomEquipment roomEquipment, LocalDate checkin, LocalDate checkout) {
        // rather simple...
        long days = checkin.until(checkout, DAYS);

        BigDecimal rate = null;

        switch (roomEquipment) {
            case BUDGET:
                rate = BigDecimal.valueOf(60L);
                break;
            case STANDARD:
                rate = BigDecimal.valueOf(92L);
                break;
            case SUPERIOR:
                rate = BigDecimal.valueOf(210L);
                break;
            default:
                throw new IllegalArgumentException("Unknown equipment " + roomEquipment);
        }

        return rate.multiply(BigDecimal.valueOf(days));
    }

}