Package com.google.cloud
Class Timestamp
- java.lang.Object
-
- com.google.cloud.Timestamp
-
- All Implemented Interfaces:
Serializable,Comparable<Timestamp>
public final class Timestamp extends Object implements Comparable<Timestamp>, Serializable
Represents a timestamp with nanosecond precision. Timestamps cover the range [0001-01-01, 9999-12-31].Timestampinstances are immutable.- See Also:
- Serialized Form
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description intcompareTo(Timestamp other)booleanequals(Object o)static TimestampfromProto(com.google.protobuf.Timestamp proto)Creates an instance of Timestamp fromcom.google.protobuf.Timestamp.intgetNanos()Returns the fractional seconds component, in nanoseconds.longgetSeconds()Returns the number of seconds since January 1, 1970, 00:00:00 UTC.inthashCode()static Timestampnow()Creates an instance with current time.static Timestampof(Timestamp timestamp)Creates an instance representing the value oftimestamp.static Timestampof(Date date)Creates an instance representing the value ofDate.static TimestampofTimeMicroseconds(long microseconds)Creates an instance representing the value ofmicroseconds.static TimestampofTimeSecondsAndNanos(long seconds, int nanos)Creates an instance representing the value ofsecondsandnanossince January 1, 1970, 00:00:00 UTC.static TimestampparseTimestamp(String timestamp)Creates a Timestamp instance from the given string.DatetoDate()Returns a newjava.util.Datecorresponding to thistimestamp.com.google.protobuf.TimestamptoProto()Returns acom.google.protobuf.Timestampinitialized to the same point in time asthis.TimestamptoSqlTimestamp()Returns a JDBC timestamp initialized to the same point in time asthis.StringtoString()
-
-
-
Method Detail
-
ofTimeSecondsAndNanos
public static Timestamp ofTimeSecondsAndNanos(long seconds, int nanos)
Creates an instance representing the value ofsecondsandnanossince January 1, 1970, 00:00:00 UTC.- Parameters:
seconds- seconds since January 1, 1970, 00:00:00 UTC. A negative value is the number of seconds before January 1, 1970, 00:00:00 UTC.nanos- the fractional seconds component, in the range 0..999999999.- Throws:
IllegalArgumentException- if the timestamp is outside the representable range
-
ofTimeMicroseconds
public static Timestamp ofTimeMicroseconds(long microseconds)
Creates an instance representing the value ofmicroseconds.- Throws:
IllegalArgumentException- if the timestamp is outside the representable range
-
of
public static Timestamp of(Date date)
Creates an instance representing the value ofDate.- Throws:
IllegalArgumentException- if the timestamp is outside the representable range
-
now
public static Timestamp now()
Creates an instance with current time.
-
of
public static Timestamp of(Timestamp timestamp)
Creates an instance representing the value oftimestamp.- Throws:
IllegalArgumentException- if the timestamp is outside the representable range
-
getSeconds
public long getSeconds()
Returns the number of seconds since January 1, 1970, 00:00:00 UTC. A negative value is the number of seconds before January 1, 1970, 00:00:00 UTC.
-
getNanos
public int getNanos()
Returns the fractional seconds component, in nanoseconds.
-
toSqlTimestamp
public Timestamp toSqlTimestamp()
Returns a JDBC timestamp initialized to the same point in time asthis.
-
toDate
public Date toDate()
Returns a newjava.util.Datecorresponding to thistimestamp. Any sub-millisecond precision will be stripped.- Returns:
- An approximate
java.util.Daterepresentation of thistimestamp.
-
compareTo
public int compareTo(Timestamp other)
- Specified by:
compareToin interfaceComparable<Timestamp>
-
fromProto
public static Timestamp fromProto(com.google.protobuf.Timestamp proto)
Creates an instance of Timestamp fromcom.google.protobuf.Timestamp.
-
toProto
public com.google.protobuf.Timestamp toProto()
Returns acom.google.protobuf.Timestampinitialized to the same point in time asthis.
-
parseTimestamp
public static Timestamp parseTimestamp(String timestamp)
Creates a Timestamp instance from the given string. Input string should be in the RFC 3339 format, like '2020-12-01T10:15:30.000Z' or with the timezone offset, such as '2020-12-01T10:15:30+01:00'.- Parameters:
timestamp- string in the RFC 3339 format- Returns:
- created Timestamp
- Throws:
org.threeten.bp.format.DateTimeParseException- if unable to parse
-
-