Interface DateResolver


  • public interface DateResolver
    Strategy for resolving an invalid year-month-day to a valid one.

    DateResolver is an interface and must be implemented with care to ensure other classes in the framework operate correctly. All implementations must be final, immutable and thread-safe.

    Author:
    Michael Nascimento Santos, Stephen Colebourne
    • Method Detail

      • resolveDate

        LocalDate resolveDate​(int year,
                              MonthOfYear monthOfYear,
                              int dayOfMonth)
        Resolves the combination of year, month and day into a date.

        The purpose of resolution is to avoid invalid dates. Each of the three fields are individually valid. However, the day-of-month may not be valid for the associated month and year.

        Parameters:
        year - the year that was input, from MIN_YEAR to MAX_YEAR
        monthOfYear - the month-of-year, not null
        dayOfMonth - the proposed day-of-month, from 1 to 31
        Returns:
        the resolved date, never null
        Throws:
        InvalidCalendarFieldException - if the date cannot be resolved