Class TimestampRegister

    • Constructor Summary

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

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      long asEpochSecs()
      Gets the contained timestamp value as the number of seconds since Java epoch (January 1, 1970 00:00:00 GMT).
      Timestamp asTimestamp()
      Gets the contained timestamp value as a java.sql.Timestamp relative to the default time zone.
      protected com.pervasive.datarush.tokens.scalar.TimestampParser getParser()
      Get the cached parser used by this object.
      ScalarTokenType getType()
      Gets the data type of the token.
      boolean isNull()
      Indicates whether the token is null valued.
      boolean isZero()
      Indicates whether the value is the zero value for the type.
      int offsetSecs()
      Gets the time zone and daylight saving time offset of the contained timestamp value, in seconds.
      void set​(long seconds, int nanos, int offsetSeconds)
      Sets the container to a timestamp value specified as time since Java epoch (January 1, 1970 00:00:00 GMT) with time zone and daylight saving time offset.
      void set​(TokenValued value)
      Sets the contained value to the given token value.
      void set​(Timestamp timestamp)
      Sets the container to a timestamp value specified as a java.sql.Timestamp object, relative to the default time zone.
      void set​(Timestamp timestamp, TimeZone timeZone)
      Sets the container to a timestamp value specified as a java.sql.Timestamp object, relative to the given time zone.
      void set​(Date date)
      Sets the container to a timestamp value specified as a java.util.Date object, relative to the default time zone.
      void set​(Date date, TimeZone timeZone)
      Sets the container to a timestamp value specified as a java.util.Date object, relative to the given time zone.
      void setNull()
      Sets the contained value to be null valued.
      void setZero()
      Sets the contained value to be zero valued.
      int subsecNanos()
      Gets the subsecond portion of the contained timestamp value.
      String toString()  
    • Constructor Detail

      • TimestampRegister

        public TimestampRegister()
        Creates a new null-valued register.
    • Method Detail

      • 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​(Date date)
        Description copied from interface: TimestampSettable
        Sets the container to a timestamp value specified as a java.util.Date object, relative to the default time zone. The time zone returned by TimeZone.getDefault() is used.
        Specified by:
        set in interface TimestampSettable
        Parameters:
        date - timestamp value to which to set the container, expressed as a point in time relative to the default time zone.
      • set

        public void set​(Date date,
                        TimeZone timeZone)
        Description copied from interface: TimestampSettable
        Sets the container to a timestamp value specified as a java.util.Date object, relative to the given time zone.
        Specified by:
        set in interface TimestampSettable
        Parameters:
        date - timestamp value to which to set the container, expressed as a point in time relative to the default time zone.
        timeZone - the time zone in which the timestamp should be interpreted
      • set

        public void set​(Timestamp timestamp)
        Description copied from interface: TimestampSettable
        Sets the container to a timestamp value specified as a java.sql.Timestamp object, relative to the default time zone. The time zone returned by TimeZone.getDefault() is used.
        Specified by:
        set in interface TimestampSettable
        Parameters:
        timestamp - timestamp value to which to set the container, expressed as a point in time relative to the default time zone.
      • set

        public void set​(Timestamp timestamp,
                        TimeZone timeZone)
        Description copied from interface: TimestampSettable
        Sets the container to a timestamp value specified as a java.sql.Timestamp object, relative to the given time zone.
        Specified by:
        set in interface TimestampSettable
        Parameters:
        timestamp - timestamp value to which to set the container, expressed as a point in time relative to the default time zone.
        timeZone - the time zone in which the timestamp should be interpreted
      • set

        public void set​(long seconds,
                        int nanos,
                        int offsetSeconds)
        Description copied from interface: TimestampSettable
        Sets the container to a timestamp value specified as time since Java epoch (January 1, 1970 00:00:00 GMT) with time zone and daylight saving time offset.
        Specified by:
        set in interface TimestampSettable
        Parameters:
        seconds - number of seconds since Java epoch
        nanos - fractional portion of epoch time in nanoseconds
        offsetSeconds - time zone and daylight saving time offset, in seconds
      • 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
      • asEpochSecs

        public final long asEpochSecs()
        Description copied from interface: TimestampValued
        Gets the contained timestamp value as the number of seconds since Java epoch (January 1, 1970 00:00:00 GMT). Timestamp values support nanosecond precision, although this method does not expose it. To access this level of detail, use subsecNanos() in conjunction with this method.
        Specified by:
        asEpochSecs in interface TimestampValued
        Returns:
        the contained value as days since Java epoch. If null valued, as indicated by TokenValued.isNull(), 0 is returned.
        See Also:
        TimestampValued.subsecNanos()
      • subsecNanos

        public final int subsecNanos()
        Description copied from interface: TimestampValued
        Gets the subsecond portion of the contained timestamp value. The value returned is relative to the seconds value returned by asEpochSecs(). Thus the value asEpochSecs() * 1000000000 + subsecNanos() represents the number of nanoseconds since Java epoch.
        Specified by:
        subsecNanos in interface TimestampValued
        Returns:
        the subsecond portion of the contained value, in nanoseconds. If null valued, as indicated by TokenValued.isNull(), 0 is returned.
        See Also:
        TimestampValued.asEpochSecs()
      • offsetSecs

        public final int offsetSecs()
        Description copied from interface: TimestampValued
        Gets the time zone and daylight saving time offset of the contained timestamp value, in seconds.
        Specified by:
        offsetSecs in interface TimestampValued
        Returns:
        the time zone and daylight saving time offset of the contained value, in seconds. If null valued, as indicated by TokenValued.isNull(), 0 is returned.
        See Also:
        TimestampValued.asEpochSecs()
      • asTimestamp

        public final Timestamp asTimestamp()
        Description copied from interface: TimestampValued
        Gets the contained timestamp value as a java.sql.Timestamp relative to the default time zone. The time zone used by TimeZone#getDefault() is used.
        Specified by:
        asTimestamp in interface TimestampValued
        Returns:
        the contained value as a java.sql.Timestamp. If null valued, as indicated by TokenValued.isNull(), null is returned.
      • getParser

        protected com.pervasive.datarush.tokens.scalar.TimestampParser getParser()
        Get the cached parser used by this object.
        Returns:
        the cached parser
      • isZero

        public 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.
      • 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