- java.lang.Object
-
- com.pervasive.datarush.tokens.scalar.TimeToken
-
- All Implemented Interfaces:
DataToken
,ScalarToken
,ScalarValued
,TimeValued
,TokenValued
,ScalarTyped
,TokenTyped
,Serializable
,Comparable<TimeToken>
public final class TimeToken extends Object implements ScalarToken, Comparable<TimeToken>
An immutableTimeValued
object.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description static int
MAX_DAY_OFFSET
static int
MIN_DAY_OFFSET
static TimeToken
NULL
A null valuedTimeToken
static TimeToken
ZERO
A zero valuedTimeToken
static int
ZERO_VALUE
The time representing a zero value, midnight.
-
Constructor Summary
Constructors Constructor Description TimeToken(int dayMillis)
Constructs a new token with the non-null time value specified as the number of milliseconds since midnight.TimeToken(int hourOfDay, int minuteOfHour, int secondOfMinute)
Constructs a new token with the non-null time of day.TimeToken(int hourOfDay, int minuteOfHour, int secondOfMinute, int subsecMillis)
Constructs a new token with the non-null time of day.TimeToken(TimeOfDay time)
Constructs a new token with the non-null time of day.TimeToken(TimeValued value)
Constructs a new token with the time value in the given container.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description int
asDayMillis()
Gets the contained time value as the number of milliseconds elapsed since midnight.TimeOfDay
asTimeOfDay()
Gets the contained time value.int
compareTo(TimeToken that)
boolean
equals(Object obj)
Indicates whether another object is equal to this token.ScalarTokenType
getType()
Gets the data type of the token.int
hashCode()
Returns a hash code for the token.boolean
isNull()
Indicates whether the token is null valued.boolean
isZero()
Indicates whether the value is the zero value for the type.static TimeToken
parse(String value)
Converts a string representation of a time value into a token.String
toString()
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface com.pervasive.datarush.tokens.scalar.ScalarValued
getType, isZero
-
Methods inherited from interface com.pervasive.datarush.tokens.TokenValued
isNull
-
-
-
-
Field Detail
-
NULL
public static final TimeToken NULL
A null valuedTimeToken
-
ZERO_VALUE
public static final int ZERO_VALUE
The time representing a zero value, midnight.- See Also:
- Constant Field Values
-
ZERO
public static final TimeToken ZERO
A zero valuedTimeToken
-
MIN_DAY_OFFSET
public static final int MIN_DAY_OFFSET
- See Also:
- Constant Field Values
-
MAX_DAY_OFFSET
public static final int MAX_DAY_OFFSET
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
TimeToken
public TimeToken(TimeValued value)
Constructs a new token with the time value in the given container.- Parameters:
value
- aTimeValued
containing the desired value
-
TimeToken
public TimeToken(int dayMillis)
Constructs a new token with the non-null time value specified as the number of milliseconds since midnight. If a null valued token is desired, useNULL
.- Parameters:
dayMillis
- the time value of the token, expressed as the number milliseconds elapsed since midnight
-
TimeToken
public TimeToken(int hourOfDay, int minuteOfHour, int secondOfMinute)
Constructs a new token with the non-null time of day. If a null valued token is desired, useNULL
.- Parameters:
hourOfDay
- the hour portion of the time. Hours are expressed in 24-hour format, ranging from 0 to 23.minuteOfHour
- the minute portion of the timesecondOfMinute
- the seconds portion of the time
-
TimeToken
public TimeToken(int hourOfDay, int minuteOfHour, int secondOfMinute, int subsecMillis)
Constructs a new token with the non-null time of day. If a null valued token is desired, useNULL
.- Parameters:
hourOfDay
- the hour portion of the time. Hours are expressed in 24-hour format, ranging from 0 to 23.minuteOfHour
- the minute portion of the timesecondOfMinute
- the seconds portion of the timesubsecMillis
- the milliseconds portion of the time
-
-
Method Detail
-
equals
public boolean equals(Object obj)
Description copied from interface:DataToken
Indicates whether another object is equal to this token. Two null valued tokens are considered equal. This differs from the behavior ofTokenComparator.equal(TokenValued,TokenValued)
but makes it possible to storeDataToken
s inMap
s.
-
hashCode
public int hashCode()
Description copied from interface:DataToken
Returns a hash code for the token. This value is guaranteed to be consistent with that returned byTokenConverter.asHashCode(TokenValued)
.
-
compareTo
public int compareTo(TimeToken that)
- Specified by:
compareTo
in interfaceComparable<TimeToken>
-
parse
public static TimeToken parse(String value)
Converts a string representation of a time value into a token.- Parameters:
value
- a string value to interpret as a time; this must be in ISO8601 format.- Returns:
- a token with the specified value
-
getType
public final ScalarTokenType getType()
Description copied from interface:TokenValued
Gets the data type of the token. This type will dictate the valid values that can be contained.- Specified by:
getType
in interfaceScalarTyped
- Specified by:
getType
in interfaceScalarValued
- Specified by:
getType
in interfaceTokenTyped
- Specified by:
getType
in interfaceTokenValued
- Returns:
- the token type.
-
asDayMillis
public final int asDayMillis()
Description copied from interface:TimeValued
Gets the contained time value as the number of milliseconds elapsed since midnight.- Specified by:
asDayMillis
in interfaceTimeValued
- Returns:
- the contained value as milliseconds since midnight.
If null valued, as indicated by
TokenValued.isNull()
,0
is returned.
-
asTimeOfDay
public final TimeOfDay asTimeOfDay()
Description copied from interface:TimeValued
Gets the contained time value. This value represents the timezone free time portion of a timestamp.- Specified by:
asTimeOfDay
in interfaceTimeValued
- Returns:
- the contained value.
If null valued, as indicated by
TokenValued.isNull()
,null
is returned.
-
isZero
public final boolean isZero()
Description copied from interface:ScalarValued
Indicates whether the value is the zero value for the type. Zero values are not stored in sparse representation formats.- Specified by:
isZero
in interfaceScalarValued
- Returns:
true
if the value is the zero value,false
otherwise.
-
isNull
public final boolean isNull()
Description copied from interface:TokenValued
Indicates whether the token is null valued. Tokens support null values analogous to SQL. Before accessing the value of the container, it is usually best to ensure it is not null valued using this method.- Specified by:
isNull
in interfaceTokenValued
- Returns:
true
if the token is null valued,false
otherwise
-
-