public class

DateTimeUtils

extends Object
java.lang.Object
   ↳ org.joda.time.DateTimeUtils

Class Overview

DateTimeUtils provide public utility methods for the date-time library.

DateTimeUtils is thread-safe although shared static variables are used.

Summary

Protected Constructors
DateTimeUtils()
Restrictive constructor
Public Methods
final static long currentTimeMillis()
Gets the current time in milliseconds.
final static Chronology getChronology(Chronology chrono)
Gets the chronology handling null.
final static long getDurationMillis(ReadableDuration duration)
Gets the millisecond duration from the specified duration object handling null.
final static Chronology getInstantChronology(ReadableInstant instant)
Gets the chronology from the specified instant object handling null.
final static long getInstantMillis(ReadableInstant instant)
Gets the millisecond instant from the specified instant object handling null.
final static Chronology getIntervalChronology(ReadableInstant start, ReadableInstant end)
Gets the chronology from the specified instant based interval handling null.
final static Chronology getIntervalChronology(ReadableInterval interval)
Gets the chronology from the specified interval object handling null.
final static PeriodType getPeriodType(PeriodType type)
Gets the period type handling null.
final static ReadableInterval getReadableInterval(ReadableInterval interval)
Gets the interval handling null.
final static DateTimeZone getZone(DateTimeZone zone)
Gets the zone handling null.
final static boolean isContiguous(ReadablePartial partial)
Checks whether the partial is contiguous.
final static void setCurrentMillisFixed(long fixedMillis)
Sets the current time to return a fixed millisecond time.
final static void setCurrentMillisOffset(long offsetMillis)
Sets the current time to return the system time plus an offset.
final static void setCurrentMillisSystem()
Resets the current time to return the system time.
[Expand]
Inherited Methods
From class java.lang.Object

Protected Constructors

protected DateTimeUtils ()

Restrictive constructor

Public Methods

public static final long currentTimeMillis ()

Gets the current time in milliseconds.

By default this returns System.currentTimeMillis(). This may be changed using other methods in this class.

Returns
  • the current time in milliseconds from 1970-01-01T00:00:00Z

public static final Chronology getChronology (Chronology chrono)

Gets the chronology handling null.

If the chronology is null, getInstance() will be returned. Otherwise, the chronology is returned.

Parameters
chrono the chronology to use, null means ISO in the default zone
Returns
  • the chronology, never null

public static final long getDurationMillis (ReadableDuration duration)

Gets the millisecond duration from the specified duration object handling null.

If the duration object is null, zero will be returned. Otherwise, the millis from the object are returned.

Parameters
duration the duration to examine, null means zero
Returns
  • the duration in milliseconds

public static final Chronology getInstantChronology (ReadableInstant instant)

Gets the chronology from the specified instant object handling null.

If the instant object is null, or the instant's chronology is null, getInstance() will be returned. Otherwise, the chronology from the object is returned.

Parameters
instant the instant to examine, null means ISO in the default zone
Returns
  • the chronology, never null

public static final long getInstantMillis (ReadableInstant instant)

Gets the millisecond instant from the specified instant object handling null.

If the instant object is null, the currentTimeMillis() will be returned. Otherwise, the millis from the object are returned.

Parameters
instant the instant to examine, null means now
Returns
  • the time in milliseconds from 1970-01-01T00:00:00Z

public static final Chronology getIntervalChronology (ReadableInstant start, ReadableInstant end)

Gets the chronology from the specified instant based interval handling null.

The chronology is obtained from the start if that is not null, or from the end if the start is null. The result is additionally checked, and if still null then getInstance() will be returned.

Parameters
start the instant to examine and use as the primary source of the chronology
end the instant to examine and use as the secondary source of the chronology
Returns
  • the chronology, never null

public static final Chronology getIntervalChronology (ReadableInterval interval)

Gets the chronology from the specified interval object handling null.

If the interval object is null, or the interval's chronology is null, getInstance() will be returned. Otherwise, the chronology from the object is returned.

Parameters
interval the interval to examine, null means ISO in the default zone
Returns
  • the chronology, never null

public static final PeriodType getPeriodType (PeriodType type)

Gets the period type handling null.

If the zone is null, standard() will be returned. Otherwise, the type specified is returned.

Parameters
type the time zone to use, null means the standard type
Returns
  • the type to use, never null

public static final ReadableInterval getReadableInterval (ReadableInterval interval)

Gets the interval handling null.

If the interval is null, an interval representing now to now in the ISOChronology will be returned. Otherwise, the interval specified is returned.

Parameters
interval the interval to use, null means now to now
Returns
  • the interval, never null

public static final DateTimeZone getZone (DateTimeZone zone)

Gets the zone handling null.

If the zone is null, getDefault() will be returned. Otherwise, the zone specified is returned.

Parameters
zone the time zone to use, null means the default zone
Returns
  • the time zone, never null

public static final boolean isContiguous (ReadablePartial partial)

Checks whether the partial is contiguous.

A partial is contiguous if one field starts where another ends.

For example LocalDate is contiguous because DayOfMonth has the same range (Month) as the unit of the next field (MonthOfYear), and MonthOfYear has the same range (Year) as the unit of the next field (Year).

Similarly, LocalTime is contiguous, as it consists of MillisOfSecond, SecondOfMinute, MinuteOfHour and HourOfDay (note how the names of each field 'join up').

However, a Year/HourOfDay partial is not contiguous because the range field Day is not equal to the next field Year. Similarly, a DayOfWeek/DayOfMonth partial is not contiguous because the range Month is not equal to the next field Day.

Parameters
partial the partial to check
Returns
  • true if the partial is contiguous
Throws
IllegalArgumentException if the partial is null

public static final void setCurrentMillisFixed (long fixedMillis)

Sets the current time to return a fixed millisecond time.

This method changes the behaviour of currentTimeMillis(). Whenever the current time is queried, the same millisecond time will be returned.

Parameters
fixedMillis the fixed millisecond time to use
Throws
SecurityException if the application does not have sufficient security rights

public static final void setCurrentMillisOffset (long offsetMillis)

Sets the current time to return the system time plus an offset.

This method changes the behaviour of currentTimeMillis(). Whenever the current time is queried, currentTimeMillis() is used and then offset by adding the millisecond value specified here.

Parameters
offsetMillis the fixed millisecond time to use
Throws
SecurityException if the application does not have sufficient security rights

public static final void setCurrentMillisSystem ()

Resets the current time to return the system time.

This method changes the behaviour of currentTimeMillis(). Whenever the current time is queried, currentTimeMillis() is used.

Throws
SecurityException if the application does not have sufficient security rights