Package org.forgerock.util.time
Class Duration
- java.lang.Object
 - 
- org.forgerock.util.time.Duration
 
 
- 
- All Implemented Interfaces:
 Comparable<Duration>
public class Duration extends Object implements Comparable<Duration>
Represents a duration in english. Cases is not important, plurals units are accepted. Notice that negative durations are not supported.6 days 59 minutes and 1 millisecond 1 minute and 10 seconds 42 millis unlimited none zero 
- 
- 
Constructor Summary
Constructors Constructor Description Duration(Long number, TimeUnit unit)Deprecated.Prefer the use ofduration(long, TimeUnit). 
- 
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description intcompareTo(Duration that)DurationconvertTo(TimeUnit targetUnit)Convert the current duration to a givenTimeUnit.static Durationduration(long number, TimeUnit unit)Provides aDuration, given a number and time unit.static Durationduration(String value)Provides aDurationthat represents the given duration expressed in english.booleanequals(Object other)TimeUnitgetUnit()Returns theTimeUnitthis duration is expressed in.longgetValue()Returns the number ofTimeUnitthis duration represents.inthashCode()booleanisUnlimited()Returns true if this Duration represents an unlimited (or indefinite) duration.booleanisZero()Returns true if this Duration represents a zero-length duration.longto(TimeUnit targetUnit)Convert the current duration to a number of givenTimeUnit.DurationtoJavaDuration()Returns this duration as a JavaDuration.StringtoString() 
 - 
 
- 
- 
Constructor Detail
- 
Duration
@Deprecated public Duration(Long number, TimeUnit unit)
Deprecated.Prefer the use ofduration(long, TimeUnit).Builds a newDuration.- Parameters:
 number- number of time unit (cannot be null).unit- TimeUnit to express the duration in (cannot be null).
 
 - 
 
- 
Method Detail
- 
duration
public static Duration duration(long number, TimeUnit unit)
Provides aDuration, given a number and time unit.- Parameters:
 number- number of time unit.unit- TimeUnit to express the duration in (cannot be null).- Returns:
 Durationinstance
 
- 
duration
public static Duration duration(String value)
Provides aDurationthat represents the given duration expressed in english.- Parameters:
 value- natural speech duration- Returns:
 Durationinstance- Throws:
 IllegalArgumentException- if the input string is incorrectly formatted.
 
- 
getValue
public long getValue()
Returns the number ofTimeUnitthis duration represents.- Returns:
 - the number of 
TimeUnitthis duration represents. 
 
- 
toJavaDuration
public Duration toJavaDuration()
Returns this duration as a JavaDuration.- Returns:
 - a new equivalent Java Duration
 
 
- 
getUnit
public TimeUnit getUnit()
Returns theTimeUnitthis duration is expressed in.- Returns:
 - the 
TimeUnitthis duration is expressed in. 
 
- 
convertTo
public Duration convertTo(TimeUnit targetUnit)
Convert the current duration to a givenTimeUnit. Conversions from finer to coarser granularities truncate, so loose precision.- Parameters:
 targetUnit- target unit of the conversion.- Returns:
 - converted duration
 - See Also:
 TimeUnit.convert(long, TimeUnit)
 
- 
to
public long to(TimeUnit targetUnit)
Convert the current duration to a number of givenTimeUnit. Conversions from finer to coarser granularities truncate, so loose precision.- Parameters:
 targetUnit- target unit of the conversion.- Returns:
 - converted duration value
 - See Also:
 TimeUnit.convert(long, TimeUnit)
 
- 
isUnlimited
public boolean isUnlimited()
Returns true if this Duration represents an unlimited (or indefinite) duration.- Returns:
 - true if this Duration represents an unlimited duration.
 
 
- 
isZero
public boolean isZero()
Returns true if this Duration represents a zero-length duration.- Returns:
 - true if this Duration represents a zero-length duration.
 
 
- 
compareTo
public int compareTo(Duration that)
- Specified by:
 compareToin interfaceComparable<Duration>
 
 - 
 
 -