public final class Timestamps extends Object
protobuf/timestamp.proto
. All operations throw an
IllegalArgumentException
if the input(s) are not valid.Modifier and Type | Field and Description |
---|---|
static Timestamp |
MAX_VALUE
A constant holding the maximum valid
Timestamp , 9999-12-31T23:59:59.999999999Z . |
static Timestamp |
MIN_VALUE
A constant holding the minimum valid
Timestamp , 0001-01-01T00:00:00Z . |
Modifier and Type | Method and Description |
---|---|
static Timestamp |
add(Timestamp start,
Duration length)
Add a duration to a timestamp.
|
static Duration |
between(Timestamp from,
Timestamp to)
Calculate the difference between two timestamps.
|
static Timestamp |
checkValid(Timestamp timestamp)
Throws an
IllegalArgumentException if the given Timestamp is not valid. |
static Comparator<Timestamp> |
comparator()
Returns a
Comparator for Timestamp s which sorts in increasing chronological
order. |
static Timestamp |
fromMicros(long microseconds)
Create a Timestamp from the number of microseconds elapsed from the epoch.
|
static Timestamp |
fromMillis(long milliseconds)
Create a Timestamp from the number of milliseconds elapsed from the epoch.
|
static Timestamp |
fromNanos(long nanoseconds)
Create a Timestamp from the number of nanoseconds elapsed from the epoch.
|
static Timestamp |
fromSeconds(long seconds)
Create a Timestamp from the number of seconds elapsed from the epoch.
|
static boolean |
isValid(long seconds,
int nanos)
Returns true if the given number of seconds and nanos is a valid
Timestamp . |
static boolean |
isValid(Timestamp timestamp)
Returns true if the given
Timestamp is valid. |
static Timestamp |
parse(String value)
Parse from RFC 3339 date string to Timestamp.
|
static Timestamp |
subtract(Timestamp start,
Duration length)
Subtract a duration from a timestamp.
|
static long |
toMicros(Timestamp timestamp)
Convert a Timestamp to the number of microseconds elapsed from the epoch.
|
static long |
toMillis(Timestamp timestamp)
Convert a Timestamp to the number of milliseconds elapsed from the epoch.
|
static long |
toNanos(Timestamp timestamp)
Convert a Timestamp to the number of nanoseconds elapsed from the epoch.
|
static long |
toSeconds(Timestamp timestamp)
Convert a Timestamp to the number of seconds elapsed from the epoch.
|
static String |
toString(Timestamp timestamp)
Convert Timestamp to RFC 3339 date string format.
|
public static final Timestamp MIN_VALUE
Timestamp
, 0001-01-01T00:00:00Z
.public static Comparator<Timestamp> comparator()
Comparator
for Timestamp
s which sorts in increasing chronological
order. Nulls and invalid Timestamp
s are not allowed (see isValid(com.google.protobuf.Timestamp)
).public static boolean isValid(Timestamp timestamp)
Timestamp
is valid. The seconds
value must be in the
range [-62,135,596,800, +253,402,300,799] (i.e., between 0001-01-01T00:00:00Z and
9999-12-31T23:59:59Z). The nanos
value must be in the range [0, +999,999,999].
Note: Negative second values with fractional seconds must still have non-negative nanos values that count forward in time.
public static boolean isValid(long seconds, int nanos)
Timestamp
. The seconds
value must be in the range [-62,135,596,800, +253,402,300,799] (i.e., between
0001-01-01T00:00:00Z and 9999-12-31T23:59:59Z). The nanos
value must be in the range
[0, +999,999,999].
Note: Negative second values with fractional seconds must still have non-negative nanos values that count forward in time.
public static Timestamp checkValid(Timestamp timestamp)
IllegalArgumentException
if the given Timestamp
is not valid.public static String toString(Timestamp timestamp)
Example of generated format: "1972-01-01T10:00:20.021Z"
IllegalArgumentException
- if the given timestamp is not in the valid range.public static Timestamp parse(String value) throws ParseException
toString(Timestamp)
and it also accepts any fractional digits (or none) and any offset as
long as they fit into nano-seconds precision.
Example of accepted format: "1972-01-01T10:00:20.021-05:00"
ParseException
- if parsing fails.public static Timestamp fromSeconds(long seconds)
public static long toSeconds(Timestamp timestamp)
The result will be rounded down to the nearest second. E.g., if the timestamp represents "1969-12-31T23:59:59.999999999Z", it will be rounded to -1 second.
public static Timestamp fromMillis(long milliseconds)
public static long toMillis(Timestamp timestamp)
The result will be rounded down to the nearest millisecond. E.g., if the timestamp represents "1969-12-31T23:59:59.999999999Z", it will be rounded to -1 millisecond.
public static Timestamp fromMicros(long microseconds)
public static long toMicros(Timestamp timestamp)
The result will be rounded down to the nearest microsecond. E.g., if the timestamp represents "1969-12-31T23:59:59.999999999Z", it will be rounded to -1 millisecond.
public static Timestamp fromNanos(long nanoseconds)
public static long toNanos(Timestamp timestamp)
public static Duration between(Timestamp from, Timestamp to)
Copyright © 2008–2017. All rights reserved.