public class

CachedDateTimeZone

extends DateTimeZone
java.lang.Object
   ↳ org.joda.time.DateTimeZone
     ↳ org.joda.time.tz.CachedDateTimeZone

Class Overview

Improves the performance of requesting time zone offsets and name keys by caching the results. Time zones that have simple rules or are fixed should not be cached, as it is unlikely to improve performance.

CachedDateTimeZone is thread-safe and immutable.

Summary

[Expand]
Inherited Fields
From class org.joda.time.DateTimeZone
Public Methods
boolean equals(Object obj)
Compare this datetime zone with another.
static CachedDateTimeZone forZone(DateTimeZone zone)
Returns a new CachedDateTimeZone unless given zone is already cached.
String getNameKey(long instant)
Returns a non-localized name that is unique to this time zone.
int getOffset(long instant)
Gets the millisecond offset to add to UTC to get local time.
int getStandardOffset(long instant)
Gets the standard millisecond offset to add to UTC to get local time, when standard time is in effect.
DateTimeZone getUncachedZone()
Returns the DateTimeZone being wrapped.
int hashCode()
Gets a hash code compatable with equals.
boolean isFixed()
Returns true if this time zone has no transitions.
long nextTransition(long instant)
Advances the given instant to where the time zone offset or name changes.
long previousTransition(long instant)
Retreats the given instant to where the time zone offset or name changes.
[Expand]
Inherited Methods
From class org.joda.time.DateTimeZone
From class java.lang.Object

Public Methods

public boolean equals (Object obj)

Compare this datetime zone with another.

Parameters
obj the object to compare with
Returns
  • true if equal, based on the ID and all internal rules

public static CachedDateTimeZone forZone (DateTimeZone zone)

Returns a new CachedDateTimeZone unless given zone is already cached.

public String getNameKey (long instant)

Returns a non-localized name that is unique to this time zone. It can be combined with id to form a unique key for fetching localized names.

Parameters
instant milliseconds from 1970-01-01T00:00:00Z to get the name for
Returns
  • name key or null if id should be used for names

public int getOffset (long instant)

Gets the millisecond offset to add to UTC to get local time.

Parameters
instant milliseconds from 1970-01-01T00:00:00Z to get the offset for
Returns
  • the millisecond offset to add to UTC to get local time

public int getStandardOffset (long instant)

Gets the standard millisecond offset to add to UTC to get local time, when standard time is in effect.

Parameters
instant milliseconds from 1970-01-01T00:00:00Z to get the offset for
Returns
  • the millisecond offset to add to UTC to get local time

public DateTimeZone getUncachedZone ()

Returns the DateTimeZone being wrapped.

public int hashCode ()

Gets a hash code compatable with equals.

Returns
  • suitable hashcode

public boolean isFixed ()

Returns true if this time zone has no transitions.

Returns
  • true if no transitions

public long nextTransition (long instant)

Advances the given instant to where the time zone offset or name changes. If the instant returned is exactly the same as passed in, then no changes occur after the given instant.

Parameters
instant milliseconds from 1970-01-01T00:00:00Z
Returns
  • milliseconds from 1970-01-01T00:00:00Z

public long previousTransition (long instant)

Retreats the given instant to where the time zone offset or name changes. If the instant returned is exactly the same as passed in, then no changes occur before the given instant.

Parameters
instant milliseconds from 1970-01-01T00:00:00Z
Returns
  • milliseconds from 1970-01-01T00:00:00Z