Class CalendricalContext

  • All Implemented Interfaces:
    Serializable

    public final class CalendricalContext
    extends Object
    implements Serializable
    Context for aspects of date-time calculations that frequently change.
    Author:
    Michael Nascimento Santos, Stephen Colebourne
    See Also:
    Serialized Form
    • Constructor Detail

      • CalendricalContext

        public CalendricalContext​(boolean strict,
                                  boolean checkUnusedFields)
        Constructs an instance that can merge the specified calendrical.
        Parameters:
        strict - whether to use strict rules
        checkUnusedFields - whether to check unused fields
    • Method Detail

      • isStrict

        public boolean isStrict()
        Checks whether calculations will use strict rules or not.
        Returns:
        true if calculations will use strict rules
      • isCheckUnusedFields

        public boolean isCheckUnusedFields()
        Checks whether to check unused fields.
        Returns:
        true if unused fields will be checked
      • getDateResolver

        public DateResolver getDateResolver()
        Gets the date resolver to use.
        Returns:
        the date resolver to use
      • resolveDate

        public LocalDate resolveDate​(int year,
                                     int month,
                                     int dayOfMonth)
        Resolves the year, month and day-of-month to a date using ISO chronology rules.

        The three input parameters are resolved to a date. If the context specifies a date resolver, then that is used. Otherwise, the strict/lenient flag is used.

        Parameters:
        year - the year to resolve
        month - the month to resolve
        dayOfMonth - the day-of-month to resolve
        Returns:
        the resolved date, never null
        Throws:
        IllegalCalendarFieldValueException - if one of the fields has an invalid value
        CalendricalException - if the input date does not match the stored date
      • equals

        public boolean equals​(Object obj)
        Is this context equal to the specified context.
        Overrides:
        equals in class Object
        Parameters:
        obj - the other context to compare to, null returns false
        Returns:
        true if this instance is equal to the specified context
      • hashCode

        public int hashCode()
        A hashcode for this context.
        Overrides:
        hashCode in class Object
        Returns:
        a suitable hashcode