cdm/src/main/java/uk/ac/rdg/resc/edal/time/DayOfMonthOfFixedYearDateTimeField.java
@Override
    public int getMaximumValue(ReadablePartial partial) {
        if (partial.isSupported(DateTimeFieldType.monthOfYear())) {
            int month = partial.get(DateTimeFieldType.monthOfYear());
            return this.daysInMonth[month - 1]; // Months are 1-based
        }
        return this.getMaximumValue();
    }
@Override
    public int getMaximumValue(ReadablePartial partial) {
        if (partial.isSupported(DateTimeFieldType.monthOfYear())) {
            int month = partial.get(DateTimeFieldType.monthOfYear());
            return this.daysInMonth[month - 1]; // Months are 1-based
        }
        return this.getMaximumValue();
    }
Adapted from the package-private BasicDayOfMonthDateTimeField