- java.lang.Object
-
- com.pervasive.datarush.tokens.scalar.NumericToken
-
- All Implemented Interfaces:
DataToken
,NumericValued
,ScalarToken
,ScalarValued
,TokenValued
,ScalarTyped
,TokenTyped
,Serializable
,Comparable<NumericToken>
public final class NumericToken extends Object implements ScalarToken, Comparable<NumericToken>
An immutableNumericValued
object.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description static NumericToken
NULL
A null valuedNumericToken
static NumericToken
ZERO
A zero valuedNumericToken
static BigDecimal
ZERO_VALUE
The numeric zero value,BigDecimal.ZERO
.-
Fields inherited from interface com.pervasive.datarush.tokens.scalar.NumericValued
MAX_INFINITY, MIN_INFINITY
-
-
Constructor Summary
Constructors Constructor Description NumericToken(double value)
Constructs a new token with the given non-null double value.NumericToken(long value)
Constructs a new token with the given non-null long value.NumericToken(NumericValued value)
Constructs a new token with the numeric value in the given container.NumericToken(BigDecimal value)
Constructs a new token with the given non-null numeric value specified as ajava.math.BigDecimal
.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description BigDecimal
asBigDecimal()
Gets the contained numeric value.int
compareTo(NumericToken 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 NumericToken
parse(String value)
Converts a string representation of a numeric 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 NumericToken NULL
A null valuedNumericToken
-
ZERO_VALUE
public static final BigDecimal ZERO_VALUE
The numeric zero value,BigDecimal.ZERO
.
-
ZERO
public static final NumericToken ZERO
A zero valuedNumericToken
-
-
Constructor Detail
-
NumericToken
public NumericToken(NumericValued value)
Constructs a new token with the numeric value in the given container.- Parameters:
value
- aNumericValued
containing the desired value
-
NumericToken
public NumericToken(BigDecimal value)
Constructs a new token with the given non-null numeric value specified as ajava.math.BigDecimal
. If a null valued token is desired, useNULL
.- Parameters:
value
- the numeric value of the token- Throws:
NullPointerException
- if the value isnull
.
-
NumericToken
public NumericToken(double value)
Constructs a new token with the given non-null double value. If a null valued token is desired, useNULL
.- Parameters:
value
- the long value of the token
-
NumericToken
public NumericToken(long value)
Constructs a new token with the given non-null long value. If a null valued token is desired, useNULL
.- Parameters:
value
- the long value of the token
-
-
Method Detail
-
compareTo
public int compareTo(NumericToken that)
- Specified by:
compareTo
in interfaceComparable<NumericToken>
-
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)
.
-
parse
public static NumericToken parse(String value)
Converts a string representation of a numeric value into a token.- Parameters:
value
- a string value to interpret as aBigDecimal
; seeBigDecimal(String)
- 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.
-
asBigDecimal
public final BigDecimal asBigDecimal()
Description copied from interface:NumericValued
Gets the contained numeric value.- Specified by:
asBigDecimal
in interfaceNumericValued
- Returns:
- the contained value as a
java.math.BigDecimal
. If null valued, as indicated byTokenValued.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
-
-