return getMeal().calculateMealDiscount(lunchBreak.getDuration());
Duration mealDiscount = getMeal().calculateMealDiscount(lunchBreak.getDuration()); if (discount.isLongerThan(mealDiscount)) { return Duration.ZERO; } return mealDiscount.minus(discount);
    public Duration checkMealDurationAccordingToRules(TimeInterval lunchBreak, boolean justification) {        if (definedMeal()) {            if (!justification                    && lunchBreak.getDuration().isShorterThan(getMeal().getMinimumMealBreakInterval())) {                return null;            } else {                // /////////remove in 2007                if (getMeal().getMinimumMealBreakInterval() != Duration.ZERO) {                    if (getMeal().getMealBreak().overlap(lunchBreak) == null) {                        return Duration.ZERO;                    }                    return getMeal().calculateMealDiscount(                            getMeal().getMealBreak().overlap(lunchBreak).toDuration());                }                // /////////////////////////                return getMeal().calculateMealDiscount(lunchBreak.getDuration());            }        }        return Duration.ZERO;    }