Class DurationRegister

java.lang.Object
com.pervasive.datarush.tokens.scalar.DurationRegister
All Implemented Interfaces:
DataRegister, DurationSettable, DurationValued, ScalarRegister, ScalarSettable, ScalarValued, TokenSettable, TokenValued, ScalarTyped, TokenTyped, Serializable

public final class DurationRegister extends Object implements ScalarRegister, DurationSettable
A mutable DurationValued object.
See Also:
  • Constructor Summary

    Constructors
    Constructor
    Description
    Creates a new null-valued register.
  • Method Summary

    Modifier and Type
    Method
    Description
    final Duration
    Gets the contained Duration value as a java.time.Duration.
    long
    Get the contained duration value as the number of seconds.
    Gets the data type of the token.
    final boolean
    Indicates whether the token is null valued.
    final boolean
    Indicates whether the value is the zero value for the type.
    void
    set(long seconds, int nanos)
    Sets the container to a directed duration value specified as seconds and nanoseconds.
    void
    Sets the contained value to the given token value.
    void
    set(Duration value)
    Sets the container to a duration value specified as a java.time.Duration object.
    void
    Sets the contained value to be null valued.
    void
    Sets the contained value to be zero valued.
    int
    Get the subsecond portion of the contained duration value.
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

    Methods inherited from interface com.pervasive.datarush.types.ScalarTyped

    getType

    Methods inherited from interface com.pervasive.datarush.tokens.scalar.ScalarValued

    getType, isZero

    Methods inherited from interface com.pervasive.datarush.tokens.TokenValued

    isNull
  • Constructor Details

    • DurationRegister

      public DurationRegister()
      Creates a new null-valued register.
  • Method Details

    • setNull

      public void setNull()
      Description copied from interface: TokenSettable
      Sets the contained value to be null valued.
      Specified by:
      setNull in interface TokenSettable
    • setZero

      public void setZero()
      Description copied from interface: TokenSettable
      Sets the contained value to be zero valued.
      Specified by:
      setZero in interface TokenSettable
    • set

      public void set(long seconds, int nanos)
      Description copied from interface: DurationSettable
      Sets the container to a directed duration value specified as seconds and nanoseconds.
      Specified by:
      set in interface DurationSettable
      Parameters:
      seconds - number of seconds in duration
      nanos - fractional nanosecond portion of duration
    • set

      public void set(Duration value)
      Description copied from interface: DurationSettable
      Sets the container to a duration value specified as a java.time.Duration object.
      Specified by:
      set in interface DurationSettable
      Parameters:
      value - duration value to which to set the container
    • set

      public void set(TokenValued value)
      Description copied from interface: TokenSettable
      Sets the contained value to the given token value. The given value must have a type compatible with this object.
      Specified by:
      set in interface TokenSettable
      Parameters:
      value - the value to which to set the container
    • 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 interface ScalarTyped
      Specified by:
      getType in interface ScalarValued
      Specified by:
      getType in interface TokenTyped
      Specified by:
      getType in interface TokenValued
      Returns:
      the token type.
    • asSeconds

      public long asSeconds()
      Description copied from interface: DurationValued
      Get the contained duration value as the number of seconds.
      Specified by:
      asSeconds in interface DurationValued
      Returns:
      the contained value as seconds. If null valued, as indicated by TokenValued.isNull(), 0 is returned.
      See Also:
    • subsecNanos

      public int subsecNanos()
      Description copied from interface: DurationValued
      Get the subsecond portion of the contained duration value.
      Specified by:
      subsecNanos in interface DurationValued
      Returns:
      the subsecond portion of the contained value, in nanoseconds. If null valued, as indicated by TokenValued.isNull(), 0 is returned.
      See Also:
    • asDuration

      public final Duration asDuration()
      Description copied from interface: DurationValued
      Gets the contained Duration value as a java.time.Duration.
      Specified by:
      asDuration in interface DurationValued
      Returns:
      the contained value as a java.time.Duration. 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 interface ScalarValued
      Returns:
      true if the value is the zero value, false otherwise.
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • 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 interface TokenValued
      Returns:
      true if the token is null valued, false otherwise