com.google.api.client.util
Class DateTime

java.lang.Object
  extended by com.google.api.client.util.DateTime
All Implemented Interfaces:
Serializable

public final class DateTime
extends Object
implements Serializable

Immutable representation of a date with an optional time and an optional time zone based on RFC 3339.

Implementation is immutable and therefore thread-safe.

Since:
1.0
Author:
Yaniv Inbar
See Also:
Serialized Form

Constructor Summary
DateTime(boolean dateOnly, long value, Integer tzShift)
           
DateTime(Date value)
           
DateTime(Date date, TimeZone zone)
           
DateTime(long value)
           
DateTime(long value, Integer tzShift)
           
DateTime(String value)
          Instantiates DateTime from an RFC 3339 date/time value.
 
Method Summary
 boolean equals(Object o)
          
 Integer getTimeZoneShift()
          Returns the time zone shift from UTC in minutes or null for local time zone.
 long getValue()
          Returns the date/time value expressed as the number of milliseconds since the Unix epoch.
 boolean isDateOnly()
          Returns whether this is a date-only value.
static DateTime parseRfc3339(String str)
          Parses an RFC 3339 date/time value.
 String toString()
           
 String toStringRfc3339()
          Formats the value as an RFC 3339 date/time string.
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

DateTime

public DateTime(Date date,
                TimeZone zone)

DateTime

public DateTime(long value)

DateTime

public DateTime(Date value)

DateTime

public DateTime(long value,
                Integer tzShift)

DateTime

public DateTime(boolean dateOnly,
                long value,
                Integer tzShift)

DateTime

public DateTime(String value)
Instantiates DateTime from an RFC 3339 date/time value.

Since:
1.11
Method Detail

getValue

public long getValue()
Returns the date/time value expressed as the number of milliseconds since the Unix epoch.

If the time zone is specified, this value is normalized to UTC, so to format this date/time value, the time zone shift has to be applied.

Since:
1.5

isDateOnly

public boolean isDateOnly()
Returns whether this is a date-only value.

Since:
1.5

getTimeZoneShift

public Integer getTimeZoneShift()
Returns the time zone shift from UTC in minutes or null for local time zone.

Since:
1.5

toStringRfc3339

public String toStringRfc3339()
Formats the value as an RFC 3339 date/time string.


toString

public String toString()
Overrides:
toString in class Object

equals

public boolean equals(Object o)

Upgrade warning: starting with version 1.11 a check is added that the time zone is the same. This may break some existing equality checks. If you ONLY want to check equality of time value, check equality on the getValue().

Overrides:
equals in class Object

parseRfc3339

public static DateTime parseRfc3339(String str)
                             throws NumberFormatException
Parses an RFC 3339 date/time value.

Upgrade warning: starting with version 1.11, for the date-only case the time zone is ignored and the hourOfDay, minute, second, and millisecond parameters are set to zero.

Throws:
NumberFormatException


Copyright © 2011-2012 Google. All Rights Reserved.