Class LenientDateTimeField

  extended by org.joda.time.DateTimeField
      extended by org.joda.time.field.DelegatedDateTimeField
          extended by org.joda.time.field.LenientDateTimeField
All Implemented Interfaces:

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.

Brian S O'Neill
See Also:
LenientChronology, StrictDateTimeField, Serialized Form

Constructor Summary
protected LenientDateTimeField(DateTimeField field, Chronology base)
Method Summary
static DateTimeField getInstance(DateTimeField field, Chronology base)
          Returns a lenient version of the given field.
 boolean isLenient()
          Returns true if the set method is lenient.
 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.
Methods inherited from class org.joda.time.field.DelegatedDateTimeField
add, add, add, addWrapField, addWrapField, addWrapPartial, get, getAsShortText, getAsShortText, getAsShortText, getAsShortText, getAsShortText, getAsText, getAsText, getAsText, getAsText, getAsText, getDifference, getDifferenceAsLong, getDurationField, getLeapAmount, getLeapDurationField, getMaximumShortTextLength, getMaximumTextLength, getMaximumValue, getMaximumValue, getMaximumValue, getMaximumValue, getMinimumValue, getMinimumValue, getMinimumValue, getMinimumValue, getName, getRangeDurationField, getType, getWrappedField, isLeap, isSupported, remainder, roundCeiling, roundFloor, roundHalfCeiling, roundHalfEven, roundHalfFloor, set, set, set, set, toString
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

Constructor Detail


protected LenientDateTimeField(DateTimeField field,
                               Chronology base)
Method Detail


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.


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.

isLenient in class DelegatedDateTimeField
true if this field is lenient


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.

set in class DelegatedDateTimeField
instant - the milliseconds from 1970-01-01T00:00:00Z to set in
value - the value to set, in the units of the field
the updated milliseconds

Copyright © 2002-2012 All Rights Reserved.