public class DurationUtils
extends java.lang.Object
Duration.| Constructor and Description |
|---|
DurationUtils() |
| Modifier and Type | Method and Description |
|---|---|
static <T extends java.lang.Throwable> |
accept(FailableBiConsumer<java.lang.Long,java.lang.Integer,T> consumer,
java.time.Duration duration)
Accepts the function with the duration as a long milliseconds and int nanoseconds.
|
static int |
getNanosOfMiili(java.time.Duration duration)
Deprecated.
|
static int |
getNanosOfMilli(java.time.Duration duration)
Gets the nanosecond part of a Duration converted to milliseconds.
|
static boolean |
isPositive(java.time.Duration duration)
Tests whether the given Duration is positive (>0).
|
static <E extends java.lang.Throwable> |
of(FailableConsumer<java.time.Instant,E> consumer)
Runs the lambda and returns the duration of its execution.
|
static <E extends java.lang.Throwable> |
of(FailableRunnable<E> runnable)
Runs the lambda and returns the duration of its execution.
|
static java.time.Duration |
since(java.time.temporal.Temporal startInclusive)
Computes the Duration between a start instant and now.
|
static java.time.Duration |
toDuration(long amount,
java.util.concurrent.TimeUnit timeUnit)
Converts an amount and TimeUnit into a Duration.
|
static int |
toMillisInt(java.time.Duration duration)
Converts a Duration to milliseconds bound to an int (instead of a long).
|
static java.time.Duration |
zeroIfNull(java.time.Duration duration)
Returns the given non-null value or
Duration.ZERO if null. |
public static <T extends java.lang.Throwable> void accept(FailableBiConsumer<java.lang.Long,java.lang.Integer,T> consumer, java.time.Duration duration) throws T extends java.lang.Throwable
T - The function exception.consumer - Accepting function.duration - The duration to pick apart.T - See the function signature.T extends java.lang.Throwable@Deprecated public static int getNanosOfMiili(java.time.Duration duration)
getNanosOfMilli(Duration).
Handy when calling an API that takes a long of milliseconds and an int of nanoseconds. For example,
Object.wait(long, int) and Thread.sleep(long, int).
Note that is this different from Duration.getNano() because a duration are seconds and nanoseconds.
duration - The duration to query.public static int getNanosOfMilli(java.time.Duration duration)
Handy when calling an API that takes a long of milliseconds and an int of nanoseconds. For example,
Object.wait(long, int) and Thread.sleep(long, int).
Note that is this different from Duration.getNano() because a duration are seconds and nanoseconds.
duration - The duration to query.public static boolean isPositive(java.time.Duration duration)
duration - the value to testpublic static <E extends java.lang.Throwable> java.time.Duration of(FailableConsumer<java.time.Instant,E> consumer) throws E extends java.lang.Throwable
E - The type of exception throw by the lambda.consumer - What to execute.E - thrown by the lambda.E extends java.lang.Throwablepublic static <E extends java.lang.Throwable> java.time.Duration of(FailableRunnable<E> runnable) throws E extends java.lang.Throwable
E - The type of exception throw by the lambda.runnable - What to execute.E - thrown by the lambda.E extends java.lang.Throwablepublic static java.time.Duration since(java.time.temporal.Temporal startInclusive)
startInclusive - the start instant, inclusive, not null.Duration, not null.public static java.time.Duration toDuration(long amount,
java.util.concurrent.TimeUnit timeUnit)
amount - the amount of the duration, measured in terms of the unit, positive or negativetimeUnit - the unit that the duration is measured in, must have an exact duration, not nullpublic static int toMillisInt(java.time.Duration duration)
Handy for low-level APIs that take millisecond timeouts in ints rather than longs.
Integer.MAX_VALUE, then return
Integer.MAX_VALUE.Integer.MIN_VALUE, then return
Integer.MIN_VALUE.duration - The duration to convert, not null.public static java.time.Duration zeroIfNull(java.time.Duration duration)
Duration.ZERO if null.duration - The duration to test.Duration.ZERO.Copyright © 2010 - 2023 Adobe. All Rights Reserved