java.lang.Object
io.deephaven.extensions.barrage.chunk.BaseChunkWriter<SOURCE_CHUNK_TYPE>
io.deephaven.extensions.barrage.chunk.FixedWidthChunkWriter<SOURCE_CHUNK_TYPE>
- All Implemented Interfaces:
ChunkWriter<SOURCE_CHUNK_TYPE>
- Direct Known Subclasses:
BigDecimalChunkWriter
,FixedWidthObjectChunkWriter
public abstract class FixedWidthChunkWriter<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
ConstructorsConstructorDescriptionFixedWidthChunkWriter
(@Nullable BaseChunkWriter.ChunkTransformer<SOURCE_CHUNK_TYPE> transformer, @NotNull Supplier<SOURCE_CHUNK_TYPE> emptyChunkSupplier, int elementSize, boolean dhNullable, boolean fieldNullable) -
Method Summary
Modifier and TypeMethodDescriptiongetInputStream
(@NotNull ChunkWriter.Context context, @Nullable RowSet subset, @NotNull BarrageOptions options) Get an input stream optionally position-space filtered using the provided RowSet.protected abstract void
writePayload
(@NotNull ChunkWriter.Context context, @NotNull DataOutput dos, @NotNull RowSequence subset) Methods inherited from class io.deephaven.extensions.barrage.chunk.BaseChunkWriter
computeNullCount, getEmptyInputStream, getNumLongsForBitPackOfSize, getValidityMapSerializationSizeFor, isFieldNullable, makeContext, writeValidityBufferInternal
-
Constructor Details
-
FixedWidthChunkWriter
public FixedWidthChunkWriter(@Nullable @Nullable BaseChunkWriter.ChunkTransformer<SOURCE_CHUNK_TYPE> transformer, @NotNull @NotNull Supplier<SOURCE_CHUNK_TYPE> emptyChunkSupplier, int elementSize, boolean dhNullable, boolean fieldNullable)
-
-
Method Details
-
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
-
writePayload
protected abstract void writePayload(@NotNull @NotNull ChunkWriter.Context context, @NotNull @NotNull DataOutput dos, @NotNull @NotNull RowSequence subset)
-