Class ImmutableConstantLongSource

java.lang.Object
io.deephaven.engine.table.impl.AbstractColumnSource<Long>
io.deephaven.engine.table.impl.sources.immutable.ImmutableConstantLongSource
All Implemented Interfaces:
ChunkSource<Values>, ChunkSource.WithPrev<Values>, ColumnSource<Long>, ElementSource<Long>, FillContextMaker, GetContextMaker, ColumnSourceGetDefaults.ForLong, ColumnSourceGetDefaults.LongBacked<Long>, DefaultChunkSource<Values>, DefaultChunkSource.WithPrev<Values>, ImmutableColumnSource<Long>, ImmutableColumnSourceGetDefaults.ForLong, ConvertibleTimeSource, FillUnordered<Values>, InMemoryColumnSource, RowKeyAgnosticChunkSource<Values>, Releasable, TupleExporter<Long>, TupleSource<Long>

Constant-value immutable ColumnSource of long.
  • Constructor Details

    • ImmutableConstantLongSource

      public ImmutableConstantLongSource(long value)
  • Method Details

    • getLong

      public final long getLong(long rowKey)
      Description copied from interface: ElementSource
      Get the value at the rowKey as a long. RowKeys that are not present are undefined.
      Specified by:
      getLong in interface ElementSource<Long>
      Parameters:
      rowKey - the location in key space to get the value from.
      Returns:
      the long at the rowKey, null values are represented by QueryConstants.NULL_LONG
    • fillChunk

      public final void fillChunk(@NotNull @NotNull ChunkSource.FillContext context, @NotNull @NotNull WritableChunk<? super Values> destination, @NotNull @NotNull RowSequence rowSequence)
      Description copied from interface: ChunkSource
      Populates the given destination chunk with data corresponding to the keys from the given RowSequence.
      Specified by:
      fillChunk in interface ChunkSource<Values>
      Overrides:
      fillChunk in class AbstractColumnSource<Long>
      Parameters:
      context - A context containing all mutable/state related data used in retrieving the Chunk.
      destination - The chunk to be populated according to rowSequence. No assumptions shall be made about the size of the chunk shall be made. The chunk will be populated from position [0,rowSequence.size()).
      rowSequence - An RowSequence representing the keys to be fetched
    • fillPrevChunk

      public final void fillPrevChunk(@NotNull @NotNull ChunkSource.FillContext context, @NotNull @NotNull WritableChunk<? super Values> destination, @NotNull @NotNull RowSequence rowSequence)
      Description copied from interface: ChunkSource.WithPrev
      Populates the given destination chunk with data corresponding to the keys from the given RowSequence.
      Specified by:
      fillPrevChunk in interface ChunkSource.WithPrev<Values>
      Overrides:
      fillPrevChunk in class AbstractColumnSource<Long>
      Parameters:
      context - A context containing all mutable/state related data used in retrieving the Chunk.
      destination - The chunk to be populated according to rowSequence. No assumptions shall be made about the size of the chunk shall be made. The chunk will be populated from position [0,rowSequence.size()).
      rowSequence - An RowSequence representing the keys to be fetched
    • fillChunkUnordered

      public void fillChunkUnordered(@NotNull @NotNull ChunkSource.FillContext context, @NotNull @NotNull WritableChunk<? super Values> dest, @NotNull @NotNull LongChunk<? extends RowKeys> keys)
      Description copied from interface: FillUnordered
      Populates a contiguous portion of the given destination chunk with data corresponding to the keys from the given LongChunk.

      It behaves as if the following code were executed:

       destination.setSize(keys.size());
       for (int ii = 0; ii < keys.size(); ++ii) {
           destination.set(ii, get(keys.get(ii)));
       }
       
      Specified by:
      fillChunkUnordered in interface FillUnordered<Values>
      Parameters:
      context - A context containing all mutable/state related data used in retrieving the Chunk.
      dest - The chunk to be populated according to keys
      keys - A chunk of individual, not assumed to be ordered keys to be fetched
    • fillPrevChunkUnordered

      public void fillPrevChunkUnordered(@NotNull @NotNull ChunkSource.FillContext context, @NotNull @NotNull WritableChunk<? super Values> dest, @NotNull @NotNull LongChunk<? extends RowKeys> keys)
      Description copied from interface: FillUnordered
      Populates a contiguous portion of the given destination chunk with prev data corresponding to the keys from the given LongChunk.

      It behaves as if the following code were executed:

       destination.setSize(keys.size());
       for (int ii = 0; ii < keys.size(); ++ii) {
           destination.set(ii, getPrev(keys.get(ii)));
       }
       
      Specified by:
      fillPrevChunkUnordered in interface FillUnordered<Values>
      Parameters:
      context - A context containing all mutable/state related data used in retrieving the Chunk.
      dest - The chunk to be populated according to keys
      keys - A chunk of individual, not assumed to be ordered keys to be fetched
    • providesFillUnordered

      public boolean providesFillUnordered()
      Description copied from interface: FillUnordered
      Returns true if this column source can efficiently provide an unordered fill. If this method returns false, then fillChunkUnordered and fillPrevChunkUnordered may throw an UnsupportedOperationException.
      Specified by:
      providesFillUnordered in interface FillUnordered<Values>
      Returns:
      if this column source can provide an unordered fill
    • allowsReinterpret

      public <ALTERNATE_DATA_TYPE> boolean allowsReinterpret(@NotNull @NotNull Class<ALTERNATE_DATA_TYPE> alternateDataType)
      Description copied from interface: ColumnSource
      Test if a reinterpret call will succeed.
      Specified by:
      allowsReinterpret in interface ColumnSource<Long>
      Overrides:
      allowsReinterpret in class AbstractColumnSource<Long>
      Parameters:
      alternateDataType - The alternative type to consider
      Returns:
      If a reinterpret on this column source with the supplied alternateDataType will succeed.
    • doReinterpret

      protected <ALTERNATE_DATA_TYPE> ColumnSource<ALTERNATE_DATA_TYPE> doReinterpret(@NotNull @NotNull Class<ALTERNATE_DATA_TYPE> alternateDataType)
      Description copied from class: AbstractColumnSource
      Supply allowed reinterpret results. The default implementation handles the most common case to avoid code duplication.
      Overrides:
      doReinterpret in class AbstractColumnSource<Long>
      Parameters:
      alternateDataType - The alternate data type
      Returns:
      The resulting ColumnSource
    • supportsTimeConversion

      public boolean supportsTimeConversion()
      Description copied from interface: ConvertibleTimeSource
      Check if this class supports time conversion. If false, all other methods will fail.
      Specified by:
      supportsTimeConversion in interface ConvertibleTimeSource
      Returns:
      true if time conversion is supported.
    • toZonedDateTime

      public ColumnSource<ZonedDateTime> toZonedDateTime(@NotNull @NotNull ZoneId zone)
      Description copied from interface: ConvertibleTimeSource
      Convert this source to a ZonedDateTime source at the specified zone.
      Specified by:
      toZonedDateTime in interface ConvertibleTimeSource
      Parameters:
      zone - the time zone
      Returns:
      a view of this source as a ZonedDateTime
    • toLocalDate

      public ColumnSource<LocalDate> toLocalDate(@NotNull @NotNull ZoneId zone)
      Description copied from interface: ConvertibleTimeSource
      Convert this source to a LocalDate source at the specified zone.
      Specified by:
      toLocalDate in interface ConvertibleTimeSource
      Parameters:
      zone - the time zone
      Returns:
      a view of this source as a LocalDate
    • toLocalTime

      public ColumnSource<LocalTime> toLocalTime(@NotNull @NotNull ZoneId zone)
      Description copied from interface: ConvertibleTimeSource
      Convert this source to a LocalTime source at the specified zone.
      Specified by:
      toLocalTime in interface ConvertibleTimeSource
      Parameters:
      zone - the time zone
      Returns:
      a view of this source as a LocalTime
    • toInstant

      public ColumnSource<Instant> toInstant()
      Description copied from interface: ConvertibleTimeSource
      Convert this source to an Instant source.
      Specified by:
      toInstant in interface ConvertibleTimeSource
      Returns:
      a view of this source asan Instant
    • toEpochNano

      public ColumnSource<Long> toEpochNano()
      Description copied from interface: ConvertibleTimeSource
      Convert this source to a long source of nanoseconds of epoch.
      Specified by:
      toEpochNano in interface ConvertibleTimeSource
      Returns:
      a view of this source as a ZonedDateTime