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].Timestamp
instances are immutable.- See Also:
- Serialized Form
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description int
compareTo(Timestamp other)
boolean
equals(Object o)
static Timestamp
fromProto(com.google.protobuf.Timestamp proto)
Creates an instance of Timestamp fromcom.google.protobuf.Timestamp
.int
getNanos()
Returns the fractional seconds component, in nanoseconds.long
getSeconds()
Returns the number of seconds since January 1, 1970, 00:00:00 UTC.int
hashCode()
static Timestamp
now()
Creates an instance with current time.static Timestamp
of(Timestamp timestamp)
Creates an instance representing the value oftimestamp
.static Timestamp
of(Date date)
Creates an instance representing the value ofDate
.static Timestamp
ofTimeMicroseconds(long microseconds)
Creates an instance representing the value ofmicroseconds
.static Timestamp
ofTimeSecondsAndNanos(long seconds, int nanos)
Creates an instance representing the value ofseconds
andnanos
since January 1, 1970, 00:00:00 UTC.static Timestamp
parseTimestamp(String timestamp)
Creates a Timestamp instance from the given string.Date
toDate()
Returns a newjava.util.Date
corresponding to thistimestamp
.com.google.protobuf.Timestamp
toProto()
Returns acom.google.protobuf.Timestamp
initialized to the same point in time asthis
.Timestamp
toSqlTimestamp()
Returns a JDBC timestamp initialized to the same point in time asthis
.String
toString()
-
-
-
Method Detail
-
ofTimeSecondsAndNanos
public static Timestamp ofTimeSecondsAndNanos(long seconds, int nanos)
Creates an instance representing the value ofseconds
andnanos
since 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.Date
corresponding to thistimestamp
. Any sub-millisecond precision will be stripped.- Returns:
- An approximate
java.util.Date
representation of thistimestamp
.
-
compareTo
public int compareTo(Timestamp other)
- Specified by:
compareTo
in 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.Timestamp
initialized 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
-
-