public final class

FixedDateTimeZone

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

Class Overview

Basic DateTimeZone implementation that has a fixed name key and offsets.

FixedDateTimeZone is thread-safe and immutable.

Summary

[Expand]
Inherited Fields
From class org.joda.time.DateTimeZone
Public Constructors
FixedDateTimeZone(String id, String nameKey, int wallOffset, int standardOffset)
Public Methods
boolean equals(Object obj)
Compare this datetime zone with another.
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 getOffsetFromLocal(long instantLocal)
Gets the millisecond offset to subtract from local time to get UTC time.
int getStandardOffset(long instant)
Gets the standard millisecond offset to add to UTC to get local time, when standard time is in effect.
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.
TimeZone toTimeZone()
Override to return the correct timzone instance.
[Expand]
Inherited Methods
From class org.joda.time.DateTimeZone
From class java.lang.Object

Public Constructors

public FixedDateTimeZone (String id, String nameKey, int wallOffset, int standardOffset)

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 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 getOffsetFromLocal (long instantLocal)

Gets the millisecond offset to subtract from local time to get UTC time. This offset can be used to undo adding the offset obtained by getOffset.

 millisLocal == millisUTC   + getOffset(millisUTC)
 millisUTC   == millisLocal - getOffsetFromLocal(millisLocal)
 
NOTE: After calculating millisLocal, some error may be introduced. At offset transitions (due to DST or other historical changes), ranges of local times may map to different UTC times.

This method will return an offset suitable for calculating an instant after any DST gap. For example, consider a zone with a cutover from 01:00 to 01:59:
Input: 00:00 Output: 00:00
Input: 00:30 Output: 00:30
Input: 01:00 Output: 02:00
Input: 01:30 Output: 02:30
Input: 02:00 Output: 02:00
Input: 02:30 Output: 02:30

NOTE: The behaviour of this method changed in v1.5, with the emphasis on returning a consistent result later along the time-line (shown above).

Parameters
instantLocal the millisecond instant, relative to this time zone, to get the offset for
Returns
  • the millisecond offset to subtract from local time to get UTC 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 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

public TimeZone toTimeZone ()

Override to return the correct timzone instance.

Returns
  • the closest matching TimeZone object