Class LenientDateTimeField

  • All Implemented Interfaces:
    java.io.Serializable

    public class LenientDateTimeField
    extends DelegatedDateTimeField
    Converts a strict DateTimeField into a lenient one. By being lenient, the set method accepts out of bounds values, performing an addition instead.

    LenientDateTimeField is thread-safe and immutable.

    Since:
    1.0
    See Also:
    LenientChronology, StrictDateTimeField, Serialized Form
    • Method Detail

      • getInstance

        public static DateTimeField getInstance​(DateTimeField field,
                                                Chronology base)
        Returns a lenient version of the given field. If it is already lenient, then it is returned as-is. Otherwise, a new LenientDateTimeField is returned.
      • isLenient

        public final boolean isLenient()
        Description copied from class: DateTimeField
        Returns true if the set method is lenient. If so, it accepts values that are out of bounds. For example, a lenient day of month field accepts 32 for January, converting it to February 1.
        Overrides:
        isLenient in class DelegatedDateTimeField
        Returns:
        true if this field is lenient
      • set

        public long set​(long instant,
                        int value)
        Set values which may be out of bounds by adding the difference between the new value and the current value.
        Overrides:
        set in class DelegatedDateTimeField
        Parameters:
        instant - the milliseconds from 1970-01-01T00:00:00Z to set in
        value - the value to set, in the units of the field
        Returns:
        the updated milliseconds