- java.lang.Object
-
- com.pervasive.datarush.sequences.scalar.AbstractScalarTokenSequence
-
- com.pervasive.datarush.sequences.scalar.PeriodTokenList
-
- All Implemented Interfaces:
MutableTokenSequence
,MutablePeriodTokenSequence
,MutableScalarTokenSequence
,PeriodTokenSequence
,ScalarTokenAppendable
,ScalarTokenSequence
,TokenAppendable
,TokenSequence
,ScalarTyped
,TokenTyped
public final class PeriodTokenList extends AbstractScalarTokenSequence implements MutablePeriodTokenSequence
Primary implementation ofMutablePeriodTokenSequence
.- See Also:
TokenTypeConstant.PERIOD
-
-
Constructor Summary
Constructors Constructor Description PeriodTokenList(int initialCapacity)
Create an empty array
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
append(Period value)
Appends the specified period to this sequence.void
append(Period value, int count)
Appends the specified period to this sequence multiple times.void
appendPeriod(int years, int months, int days)
Appends the period specified in years, months, and days to this sequence.void
appendPeriod(int years, int months, int days, int count)
Appends the period specified in years, months, and days to this sequence multiple times.void
fillPeriods(int start, int length, int years, int months, int days)
Sets the tokens in the specified subsequence to a period value specified as years, months, and days.void
fillValue(int start, int length, TokenValued value)
Sets the tokens in the specified subsequence to the given value.int
getDays(int index)
Gets the day portion of the value of the specified token.int
getMonths(int index)
Gets the month portion of the value of the specified token.Period
getPeriod(int index)
Gets the value of the specified token as a period.PeriodValued
getToken(int index)
Gets the value at the specified position.PeriodSettable
getTokenSetter(int index)
Returns a mutator for the given index.ScalarTokenType
getType()
Gets the data type of the tokens in the sequence.void
getValues(int start, int[] yearValues, int[] monthValues, int[] dayValues, boolean[] nullsValues, int offset, int length)
Gets the values and null indicators for a range of tokens.int
getYears(int index)
Gets the year portion of the value of the specified token.boolean
isZero(int index)
Indicates whether the specified token has a zero value.PeriodValuedIterator
newValueIterator()
Creates an iterator over the non-null values of this sequence.void
set(int index, Period value)
Sets the token at the specified position to the given value.void
setNull(int index)
Sets the token at the specified position to be null valued.void
setNull(int start, int length)
Sets the tokens in the specified subsequence to be null valued.void
setPeriod(int index, int years, int months, int days)
Sets the token at the specified position to the given value.void
setValue(int index, TokenValued value)
Sets the token at the specified position to the given value.void
setValues(int start, TokenSequence values, int offset, int length)
Sets the tokens in the specified subsequence of the array to the corresponding values from a subsequence of the given source sequence.void
setZero(int index)
Sets the token at the specified position to be zero valued.void
setZero(int start, int length)
Sets the tokens in the specified subsequence to be zero valued.-
Methods inherited from class com.pervasive.datarush.sequences.scalar.AbstractScalarTokenSequence
append, append, append, append, appendNull, appendNull, appendZero, appendZero, capacity, compareElement, compareElements, ensureCanonical, getElementComparator, getModificationCount, hashCode, isNull, isNull, map, remaining, reset, size, toString, toString
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface com.pervasive.datarush.sequences.scalar.MutableScalarTokenSequence
ensureCanonical, getModificationCount
-
Methods inherited from interface com.pervasive.datarush.sequences.MutableTokenSequence
appendNull, appendNull, appendZero, appendZero, reset
-
Methods inherited from interface com.pervasive.datarush.sequences.scalar.ScalarTokenSequence
isNull
-
Methods inherited from interface com.pervasive.datarush.sequences.TokenAppendable
append, append, append, append
-
Methods inherited from interface com.pervasive.datarush.sequences.TokenSequence
compareElement, compareElements, getElementComparator, hashCode, isNull, size, toString
-
-
-
-
Method Detail
-
getType
public ScalarTokenType getType()
Description copied from interface:ScalarTokenSequence
Gets the data type of the tokens in the sequence.- Specified by:
getType
in interfaceScalarTokenSequence
- Specified by:
getType
in interfaceScalarTyped
- Specified by:
getType
in interfaceTokenTyped
- Returns:
- the token data type
-
getToken
public PeriodValued getToken(int index)
Description copied from interface:TokenSequence
Gets the value at the specified position.- Specified by:
getToken
in interfacePeriodTokenSequence
- Specified by:
getToken
in interfaceScalarTokenSequence
- Specified by:
getToken
in interfaceTokenSequence
- Parameters:
index
- the index of the token- Returns:
- the value
-
getPeriod
public Period getPeriod(int index)
Description copied from interface:PeriodTokenSequence
Gets the value of the specified token as a period.- Specified by:
getPeriod
in interfacePeriodTokenSequence
- Parameters:
index
- the position of the token in the sequence- Returns:
- the value of the token. If the
token is null valued,
null
is returned.
-
getYears
public int getYears(int index)
Description copied from interface:PeriodTokenSequence
Gets the year portion of the value of the specified token.- Specified by:
getYears
in interfacePeriodTokenSequence
- Parameters:
index
- the position of the token in the sequence- Returns:
- the year value of the token. If the
token is null valued,
0
is returned.
-
getMonths
public int getMonths(int index)
Description copied from interface:PeriodTokenSequence
Gets the month portion of the value of the specified token.- Specified by:
getMonths
in interfacePeriodTokenSequence
- Parameters:
index
- the position of the token in the sequence- Returns:
- the month value of the token. If the
token is null valued,
0
is returned.
-
getDays
public int getDays(int index)
Description copied from interface:PeriodTokenSequence
Gets the day portion of the value of the specified token.- Specified by:
getDays
in interfacePeriodTokenSequence
- Parameters:
index
- the position of the token in the sequence- Returns:
- the day value of the token. If the
token is null valued,
0
is returned.
-
getValues
public void getValues(int start, int[] yearValues, int[] monthValues, int[] dayValues, boolean[] nullsValues, int offset, int length)
Description copied from interface:PeriodTokenSequence
Gets the values and null indicators for a range of tokens.- Specified by:
getValues
in interfacePeriodTokenSequence
- Parameters:
start
- the starting index of the rangeyearValues
- an array into which to place the year values of elementsmonthValues
- an array into which to place the month values of elementsdayValues
- an array into which to place the day values of elementsnullsValues
- an array into which to place null indicator valuesoffset
- the starting offset into the target arrays. That is,elements[offset]
andnulls[offset]
will get the value and null indicator respectively of the token at positionstart
, and so on.length
- number of tokens to get
-
newValueIterator
public PeriodValuedIterator newValueIterator()
Description copied from interface:TokenSequence
Creates an iterator over the non-null values of this sequence. The iterator will automatically be reset as modifications are made to the sequence.- Specified by:
newValueIterator
in interfacePeriodTokenSequence
- Specified by:
newValueIterator
in interfaceScalarTokenSequence
- Specified by:
newValueIterator
in interfaceTokenSequence
- Returns:
- an newly-created iterator over the non-null values of this sequence.
-
isZero
public boolean isZero(int index)
Description copied from interface:ScalarTokenSequence
Indicates whether the specified token has a zero value.- Specified by:
isZero
in interfaceScalarTokenSequence
- Parameters:
index
- the index of the token- Returns:
true
if the element is zero,false
otherwise
-
setNull
public void setNull(int index)
Description copied from interface:MutableTokenSequence
Sets the token at the specified position to be null valued.- Specified by:
setNull
in interfaceMutableTokenSequence
- Parameters:
index
- the position of the token in the array
-
setNull
public void setNull(int start, int length)
Description copied from interface:MutableTokenSequence
Sets the tokens in the specified subsequence to be null valued.- Specified by:
setNull
in interfaceMutableTokenSequence
- Parameters:
start
- the starting index of the subsequence in the arraylength
- the length of the subsequence
-
setZero
public void setZero(int index)
Description copied from interface:MutableTokenSequence
Sets the token at the specified position to be zero valued.- Specified by:
setZero
in interfaceMutableTokenSequence
- Parameters:
index
- the position of the token in the array
-
setZero
public void setZero(int start, int length)
Description copied from interface:MutableTokenSequence
Sets the tokens in the specified subsequence to be zero valued.- Specified by:
setZero
in interfaceMutableTokenSequence
- Parameters:
start
- the starting index of the subsequence in the arraylength
- the length of the subsequence
-
setValue
public void setValue(int index, TokenValued value)
Description copied from interface:MutableTokenSequence
Sets the token at the specified position to the given value.- Specified by:
setValue
in interfaceMutableTokenSequence
- Parameters:
index
- the position of the token in the arrayvalue
- the value to which to set the token. This value must be of an appropriate type for the array.
-
fillPeriods
public void fillPeriods(int start, int length, int years, int months, int days)
Sets the tokens in the specified subsequence to a period value specified as years, months, and days.- Parameters:
start
- the starting index of the subsequence in the arraylength
- the length of the subsequenceyears
- number of years in periodmonths
- number of months in perioddays
- number of days in period
-
fillValue
public void fillValue(int start, int length, TokenValued value)
Description copied from interface:MutableTokenSequence
Sets the tokens in the specified subsequence to the given value.- Specified by:
fillValue
in interfaceMutableTokenSequence
- Parameters:
start
- the starting index of the subsequence in the arraylength
- the length of the subsequencevalue
- the value to which to set the tokens. This value must be of an appropriate type for the array
-
setValues
public void setValues(int start, TokenSequence values, int offset, int length)
Description copied from interface:MutableTokenSequence
Sets the tokens in the specified subsequence of the array to the corresponding values from a subsequence of the given source sequence.- Specified by:
setValues
in interfaceMutableTokenSequence
- Parameters:
start
- the starting index of the subsequence in the arrayvalues
- the source sequence. This sequence must be of an appropriate type for the array.offset
- the starting index in the source sequence. Corresponding values will be taken relative to this position. That is, the value of the token at positionoffset
invalues
will be assigned to the token at positionstart
, and so on.length
- the number of tokens to copy
-
append
public void append(Period value)
Description copied from interface:MutablePeriodTokenSequence
Appends the specified period to this sequence.- Specified by:
append
in interfaceMutablePeriodTokenSequence
- Parameters:
value
- the value to append. Ifnull
, this is equivalent toappendNull()
.
-
appendPeriod
public void appendPeriod(int years, int months, int days)
Description copied from interface:MutablePeriodTokenSequence
Appends the period specified in years, months, and days to this sequence.- Specified by:
appendPeriod
in interfaceMutablePeriodTokenSequence
- Parameters:
years
- the number of years in the period.months
- the number of months in the period.days
- the number of days in the period.
-
append
public void append(Period value, int count)
Description copied from interface:MutablePeriodTokenSequence
Appends the specified period to this sequence multiple times.- Specified by:
append
in interfaceMutablePeriodTokenSequence
- Parameters:
value
- the value to append. Ifnull
, this is equivalent toappendNull()
.count
- the number of copies to append.
-
appendPeriod
public void appendPeriod(int years, int months, int days, int count)
Description copied from interface:MutablePeriodTokenSequence
Appends the period specified in years, months, and days to this sequence multiple times.- Specified by:
appendPeriod
in interfaceMutablePeriodTokenSequence
- Parameters:
years
- the number of years in the period.months
- the number of months in the period.days
- the number of days in the period.count
- the number of copies to append.
-
set
public void set(int index, Period value)
Description copied from interface:MutablePeriodTokenSequence
Sets the token at the specified position to the given value.- Specified by:
set
in interfaceMutablePeriodTokenSequence
- Parameters:
index
- the position to modifyvalue
- the period to which to set the token.
-
setPeriod
public void setPeriod(int index, int years, int months, int days)
Description copied from interface:MutablePeriodTokenSequence
Sets the token at the specified position to the given value.- Specified by:
setPeriod
in interfaceMutablePeriodTokenSequence
- Parameters:
index
- the position to modifyyears
- the number of years in the period.months
- the number of months in the period.days
- the number of days in the period.
-
getTokenSetter
public PeriodSettable getTokenSetter(int index)
Description copied from interface:MutableTokenSequence
Returns a mutator for the given index.- Specified by:
getTokenSetter
in interfaceMutablePeriodTokenSequence
- Specified by:
getTokenSetter
in interfaceMutableScalarTokenSequence
- Specified by:
getTokenSetter
in interfaceMutableTokenSequence
- Parameters:
index
- the position- Returns:
- a mutator for the given index.
-
-