Class TimeTokenList

java.lang.Object
com.pervasive.datarush.sequences.scalar.AbstractScalarTokenSequence
com.pervasive.datarush.sequences.scalar.TimeTokenList
All Implemented Interfaces:
MutableTokenSequence, MutableScalarTokenSequence, MutableTimeTokenSequence, ScalarTokenAppendable, ScalarTokenSequence, TimeTokenSequence, TokenAppendable, TokenSequence, ScalarTyped, TokenTyped

public final class TimeTokenList extends AbstractScalarTokenSequence implements MutableTimeTokenSequence
Primary implementation of MutableTimeTokenSequence.
See Also:
  • Constructor Details

    • TimeTokenList

      public TimeTokenList(int initialCapacity)
      Create an empty array
      Parameters:
      initialCapacity - the initial capacity.
  • Method Details

    • getType

      public ScalarTokenType getType()
      Description copied from interface: ScalarTokenSequence
      Gets the data type of the tokens in the sequence.
      Specified by:
      getType in interface ScalarTokenSequence
      Specified by:
      getType in interface ScalarTyped
      Specified by:
      getType in interface TokenTyped
      Returns:
      the token data type
    • getDayMillis

      public int getDayMillis(int index)
      Description copied from interface: TimeTokenSequence
      Get the value of the specified token as the number of milliseconds elapsed since midnight.
      Specified by:
      getDayMillis in interface TimeTokenSequence
      Parameters:
      index - the index of the token
      Returns:
      the value of the element. If the token is null valued, 0 is returned.
    • getTimeOfDay

      public TimeOfDay getTimeOfDay(int index)
      Description copied from interface: TimeTokenSequence
      Gets the value of the specified token as a time of day.
      Specified by:
      getTimeOfDay in interface TimeTokenSequence
      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.
    • getToken

      public TimeValued getToken(int index)
      Description copied from interface: TokenSequence
      Gets the value at the specified position.
      Specified by:
      getToken in interface ScalarTokenSequence
      Specified by:
      getToken in interface TimeTokenSequence
      Specified by:
      getToken in interface TokenSequence
      Parameters:
      index - the index of the token
      Returns:
      the value
    • getTokenSetter

      public TimeSettable getTokenSetter(int index)
      Description copied from interface: MutableTokenSequence
      Returns a mutator for the given index.
      Specified by:
      getTokenSetter in interface MutableScalarTokenSequence
      Specified by:
      getTokenSetter in interface MutableTimeTokenSequence
      Specified by:
      getTokenSetter in interface MutableTokenSequence
      Parameters:
      index - the position
      Returns:
      a mutator for the given index.
    • getValues

      public void getValues(int index, int[] values, boolean[] nullFlags, int offset, int length)
      Description copied from interface: TimeTokenSequence
      Gets the values and null indicators for a range of tokens.
      Specified by:
      getValues in interface TimeTokenSequence
      Parameters:
      index - the starting index of the range
      values - an array into which to place element values, represented as milliseconds since midnight
      nullFlags - an array into which to place null indicator values
      offset - the starting offset into the target arrays. That is, elements[offset] and nulls[offset] will get the value and null indicator respectively of the token at position start, and so on.
      length - number of tokens to get
      See Also:
      • #getEpochDays(int)
    • 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 interface MutableTokenSequence
      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 interface MutableTokenSequence
      Parameters:
      start - the starting index of the subsequence in the array
      length - 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 interface MutableTokenSequence
      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 interface MutableTokenSequence
      Parameters:
      start - the starting index of the subsequence in the array
      length - the length of the subsequence
    • isZero

      public final boolean isZero(int index)
      Description copied from interface: ScalarTokenSequence
      Indicates whether the specified token has a zero value.
      Specified by:
      isZero in interface ScalarTokenSequence
      Parameters:
      index - the index of the token
      Returns:
      true if the element is zero, false otherwise
    • setDayMillis

      public void setDayMillis(int index, int millis)
      Description copied from interface: MutableTimeTokenSequence
      Sets the token at the specified position to a time value specified as the number of milliseconds elapsed since midnight.
      Specified by:
      setDayMillis in interface MutableTimeTokenSequence
    • fillDayMillis

      public void fillDayMillis(int start, int length, int millis)
      Sets the tokens in the specified subsequence to a time value specified as the number of milliseconds elapsed since midnight.
      Parameters:
      start - the starting index of the subsequence in the array
      length - the length of the subsequence
      millis - time value to which to set the token, expressed as the number of milliseconds since midnight
    • setTimeOfDay

      public void setTimeOfDay(int index, TimeOfDay value)
      Sets the token at the specified position to the specified time of day.
      Parameters:
      index - the position of the token in the array
      value - the calendar date to which to set the token. Passing null is equivalent to calling setNull(index}.
    • fillTimeOfDay

      public void fillTimeOfDay(int start, int length, TimeOfDay value)
      Sets the tokens in the specified subsequence to the specified calendar date.
      Parameters:
      start - the starting index of the subsequence in the array
      length - the length of the subsequence
      value - the calendar date to which to set the tokens. Passing null is equivalent to calling setNull(start, length}.
    • 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 interface MutableTokenSequence
      Parameters:
      index - the position of the token in the array
      value - the value to which to set the token. This value must be of an appropriate type for the array.
    • 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 interface MutableTokenSequence
      Parameters:
      start - the starting index of the subsequence in the array
      length - the length of the subsequence
      value - 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 interface MutableTokenSequence
      Parameters:
      start - the starting index of the subsequence in the array
      values - 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 position offset in values will be assigned to the token at position start, and so on.
      length - the number of tokens to copy
    • appendDayMillis

      public void appendDayMillis(int dayMillis)
      Description copied from interface: MutableTimeTokenSequence
      Appends the time value specified as the number of milliseconds elapsed since midnight to this sequence.
      Specified by:
      appendDayMillis in interface MutableTimeTokenSequence
      Parameters:
      dayMillis - time value to which to set the token, expressed as the number of milliseconds elapsed since midnight
    • appendDayMillis

      public void appendDayMillis(int dayMillis, int count)
      Description copied from interface: MutableTimeTokenSequence
      Appends the time value specified as the number of milliseconds elapsed since midnight to this sequence multiple times.
      Specified by:
      appendDayMillis in interface MutableTimeTokenSequence
      Parameters:
      dayMillis - the value to append.
      count - the number of copies to append.
    • append

      public void append(TimeOfDay time)
      Description copied from interface: MutableTimeTokenSequence
      Appends the specified time of day to this sequence.
      Specified by:
      append in interface MutableTimeTokenSequence
      Parameters:
      time - the value to append.
    • append

      public void append(TimeOfDay time, int count)
      Description copied from interface: MutableTimeTokenSequence
      Appends the specified time of day to this sequence.
      Specified by:
      append in interface MutableTimeTokenSequence
      Parameters:
      time - the value to append.
      count - the number of copies to append.
    • newValueIterator

      public TimeValuedIterator 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 interface ScalarTokenSequence
      Specified by:
      newValueIterator in interface TimeTokenSequence
      Specified by:
      newValueIterator in interface TokenSequence
      Returns:
      an newly-created iterator over the non-null values of this sequence.