java.lang.Object
io.deephaven.extensions.barrage.chunk.BaseChunkWriter<SOURCE_CHUNK_TYPE>
io.deephaven.extensions.barrage.chunk.ShortChunkWriter<SOURCE_CHUNK_TYPE>
- All Implemented Interfaces:
ChunkWriter<SOURCE_CHUNK_TYPE>
public class ShortChunkWriter<SOURCE_CHUNK_TYPE extends Chunk<Values>>
extends BaseChunkWriter<SOURCE_CHUNK_TYPE>
-
Nested Class Summary
Nested classes/interfaces inherited from class io.deephaven.extensions.barrage.chunk.BaseChunkWriter
BaseChunkWriter.ChunkTransformer<SOURCE_CHUNK_TYPE extends Chunk<Values>>, BaseChunkWriter.SerContext
Nested classes/interfaces inherited from interface io.deephaven.extensions.barrage.chunk.ChunkWriter
ChunkWriter.BufferListener, ChunkWriter.Context, ChunkWriter.DrainableColumn, ChunkWriter.Factory, ChunkWriter.FieldNodeInfo, ChunkWriter.FieldNodeListener
-
Field Summary
Fields inherited from class io.deephaven.extensions.barrage.chunk.BaseChunkWriter
dhNullable, elementSize, fieldNullable, PADDING_BUFFER, REMAINDER_MOD_8_MASK
-
Constructor Summary
ConstructorsConstructorDescriptionShortChunkWriter
(@Nullable BaseChunkWriter.ChunkTransformer<SOURCE_CHUNK_TYPE> transformer, @NotNull Supplier<SOURCE_CHUNK_TYPE> emptyChunkSupplier, boolean fieldNullable) -
Method Summary
Modifier and TypeMethodDescriptionstatic WritableShortChunk<Values>
chunkUnboxer
(@NotNull ObjectChunk<Short, Values> sourceValues) protected int
computeNullCount
(@NotNull ChunkWriter.Context context, @NotNull RowSequence subset) Compute the number of nulls in the subset.static ShortChunkWriter<ShortChunk<Values>>
getIdentity
(boolean isNullable) getInputStream
(@NotNull ChunkWriter.Context context, @Nullable RowSet subset, @NotNull BarrageOptions options) Get an input stream optionally position-space filtered using the provided RowSet.static ChunkWriter<ObjectChunk<Short,
Values>> makeBoxed
(@NotNull ChunkWriter<ShortChunk<Values>> innerWriter) protected void
writeValidityBufferInternal
(@NotNull ChunkWriter.Context context, @NotNull RowSequence subset, @NotNull BaseChunkWriter.SerContext serContext) Update the validity buffer for the subset.Methods inherited from class io.deephaven.extensions.barrage.chunk.BaseChunkWriter
getEmptyInputStream, getNumLongsForBitPackOfSize, getValidityMapSerializationSizeFor, isFieldNullable, makeContext
-
Constructor Details
-
ShortChunkWriter
public ShortChunkWriter(@Nullable @Nullable BaseChunkWriter.ChunkTransformer<SOURCE_CHUNK_TYPE> transformer, @NotNull @NotNull Supplier<SOURCE_CHUNK_TYPE> emptyChunkSupplier, boolean fieldNullable)
-
-
Method Details
-
getIdentity
-
chunkUnboxer
public static WritableShortChunk<Values> chunkUnboxer(@NotNull @NotNull ObjectChunk<Short, Values> sourceValues) -
makeBoxed
public static ChunkWriter<ObjectChunk<Short,Values>> makeBoxed(@NotNull @NotNull ChunkWriter<ShortChunk<Values>> innerWriter) -
getInputStream
public ChunkWriter.DrainableColumn getInputStream(@NotNull @NotNull ChunkWriter.Context context, @Nullable @Nullable RowSet subset, @NotNull @NotNull BarrageOptions options) throws IOException Description copied from interface:ChunkWriter
Get an input stream optionally position-space filtered using the provided RowSet.- Parameters:
context
- the chunk writer context holding the data to be drained to the clientsubset
- if provided, is a position-space filter of source dataoptions
- options for writing to the stream- Returns:
- a single-use DrainableColumn ready to be drained via grpc
- Throws:
IOException
-
computeNullCount
protected int computeNullCount(@NotNull @NotNull ChunkWriter.Context context, @NotNull @NotNull RowSequence subset) Description copied from class:BaseChunkWriter
Compute the number of nulls in the subset.- Specified by:
computeNullCount
in classBaseChunkWriter<SOURCE_CHUNK_TYPE extends Chunk<Values>>
- Parameters:
context
- the context for the chunksubset
- the subset of rows to consider- Returns:
- the number of nulls in the subset
-
writeValidityBufferInternal
protected void writeValidityBufferInternal(@NotNull @NotNull ChunkWriter.Context context, @NotNull @NotNull RowSequence subset, @NotNull @NotNull BaseChunkWriter.SerContext serContext) Description copied from class:BaseChunkWriter
Update the validity buffer for the subset.- Specified by:
writeValidityBufferInternal
in classBaseChunkWriter<SOURCE_CHUNK_TYPE extends Chunk<Values>>
- Parameters:
context
- the context for the chunksubset
- the subset of rows to considerserContext
- the serialization context
-