-
public class TimeUtilsProvides utility methods for converting between different time formats. Two of the methods are taken from the Apache Commons Net package, and are copied here to avoid pulling in the whole package as a dependency.
-
-
Method Summary
Modifier and Type Method Description static longtoNtpTime(long t)Taken from from org.apache.commons.net.ntp.TimeStamp#toNtpTime(long)Converts Java time to 64-bit NTP time representation. static longgetTime(long ntpTimeValue)Taken from from org.apache.commons.net.ntp.TimeStamp#toNtpTime(long)Convert 64-bit NTP timestamp to Java standard time.Note that java time (milliseconds) by definition has less precisionthen NTP time (picoseconds) so converting NTP timestamp to java time and backto NTP timestamp loses precision. static longtoNtpShortFormat(long ntpTime)Converts the given timestamp in NTP Timestamp Format into NTP ShortFormat (see "http://tools.ietf. static longntpShortToMs(long ntpShortTime)Converts a timestamp in NTP Short Format (Q16. static longconstructNtp(long msw, long lsw)Constructs a {@code long}representation of a timestamp in NTP TimestampFormat (see "http://tools.ietf.static longgetMsw(long ntpTime)Gets the most significant word (32bits) from an NTP Timestamp representedas a long. static longgetLsw(long ntpTime)Gets the least significant word (32bits) from an NTP Timestamprepresented as a long. static StringformatTimeAsFullMillis(long secs, int nanos)Formats a time -- represented by (long seconds, int nanos) -- asa String of floating-point milliseconds, in full precision.This is designed to format the java.time.Duration and java.time.Intervalclasses, without being dependent on them.This should return a correct result for every valid (secs, nanos) pair. -
-
Method Detail
-
toNtpTime
static long toNtpTime(long t)
Taken from from org.apache.commons.net.ntp.TimeStamp#toNtpTime(long)Converts Java time to 64-bit NTP time representation.
- Parameters:
t- Java time
-
getTime
static long getTime(long ntpTimeValue)
Taken from from org.apache.commons.net.ntp.TimeStamp#toNtpTime(long)Convert 64-bit NTP timestamp to Java standard time.Note that java time (milliseconds) by definition has less precisionthen NTP time (picoseconds) so converting NTP timestamp to java time and backto NTP timestamp loses precision. For example, Tue, Dec 17 2002 09:07:24.810 ESTis represented by a single Java-based time value of f22cd1fc8a, but itsNTP equivalent are all values ranging from c1a9ae1c.cf5c28f5 to c1a9ae1c.cf9db22c.
- Parameters:
ntpTimeValue- the input time
-
toNtpShortFormat
static long toNtpShortFormat(long ntpTime)
Converts the given timestamp in NTP Timestamp Format into NTP ShortFormat (see "http://tools.ietf.org/html/rfc5905#section-6").
- Parameters:
ntpTime- the timestamp to convert.
-
ntpShortToMs
static long ntpShortToMs(long ntpShortTime)
Converts a timestamp in NTP Short Format (Q16.16, see "http://tools.ietf.org/html/rfc5905#section-6") intomilliseconds.
- Parameters:
ntpShortTime- the timestamp in NTP Short Format to convert.
-
constructNtp
static long constructNtp(long msw, long lsw)
Constructs a
{@code long}representation of a timestamp in NTP TimestampFormat (see "http://tools.ietf.org/html/rfc5905#section-6").- Parameters:
msw- The most significant word (32bits) represented as a long.lsw- The least significant word (32bits) represented as a long.
-
getMsw
static long getMsw(long ntpTime)
Gets the most significant word (32bits) from an NTP Timestamp representedas a long.
- Parameters:
ntpTime- the timestamp in NTP Timestamp Format.
-
getLsw
static long getLsw(long ntpTime)
Gets the least significant word (32bits) from an NTP Timestamprepresented as a long.
- Parameters:
ntpTime- the timestamp in NTP Timestamp Format.
-
formatTimeAsFullMillis
static String formatTimeAsFullMillis(long secs, int nanos)
Formats a time -- represented by (long seconds, int nanos) -- asa String of floating-point milliseconds, in full precision.This is designed to format the java.time.Duration and java.time.Intervalclasses, without being dependent on them.This should return a correct result for every valid (secs, nanos) pair.
-
-
-
-