Class TransformingChunkReader<INPUT_CHUNK_TYPE extends WritableChunk<Values>,OUTPUT_CHUNK_TYPE extends WritableChunk<Values>>
java.lang.Object
io.deephaven.extensions.barrage.chunk.BaseChunkReader<OUTPUT_CHUNK_TYPE>
io.deephaven.extensions.barrage.chunk.TransformingChunkReader<INPUT_CHUNK_TYPE,OUTPUT_CHUNK_TYPE>
- Type Parameters:
INPUT_CHUNK_TYPE
- the input chunk typeOUTPUT_CHUNK_TYPE
- the output chunk type
- All Implemented Interfaces:
ChunkReader<OUTPUT_CHUNK_TYPE>
public class TransformingChunkReader<INPUT_CHUNK_TYPE extends WritableChunk<Values>,OUTPUT_CHUNK_TYPE extends WritableChunk<Values>>
extends BaseChunkReader<OUTPUT_CHUNK_TYPE>
A
ChunkReader
that reads a chunk of wire values and transforms them into a different chunk type.-
Nested Class Summary
Nested classes/interfaces inherited from class io.deephaven.extensions.barrage.chunk.BaseChunkReader
BaseChunkReader.ChunkTransformer<READ_CHUNK_TYPE extends Chunk<Values>,
DEST_CHUNK_TYPE extends WritableChunk<Values>> Nested classes/interfaces inherited from interface io.deephaven.extensions.barrage.chunk.ChunkReader
ChunkReader.Factory
-
Constructor Summary
ConstructorsConstructorDescriptionTransformingChunkReader
(@NotNull ChunkReader<INPUT_CHUNK_TYPE> wireChunkReader, IntFunction<OUTPUT_CHUNK_TYPE> chunkFactory, Function<WritableChunk<Values>, OUTPUT_CHUNK_TYPE> castFunction, BaseChunkReader.ChunkTransformer<INPUT_CHUNK_TYPE, OUTPUT_CHUNK_TYPE> transformer) -
Method Summary
Modifier and TypeMethodDescriptionreadChunk
(@NotNull Iterator<ChunkWriter.FieldNodeInfo> fieldNodeIter, PrimitiveIterator.OfLong bufferInfoIter, @NotNull DataInput is, @Nullable WritableChunk<Values> outChunk, int outOffset, int totalRows) Reads the given DataInput to extract the next Arrow buffer as a Deephaven Chunk.Methods inherited from class io.deephaven.extensions.barrage.chunk.BaseChunkReader
castOrCreateChunk, getChunkTypeFor, readValidityBuffer
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface io.deephaven.extensions.barrage.chunk.ChunkReader
readChunk
-
Constructor Details
-
TransformingChunkReader
public TransformingChunkReader(@NotNull @NotNull ChunkReader<INPUT_CHUNK_TYPE> wireChunkReader, IntFunction<OUTPUT_CHUNK_TYPE> chunkFactory, Function<WritableChunk<Values>, OUTPUT_CHUNK_TYPE> castFunction, BaseChunkReader.ChunkTransformer<INPUT_CHUNK_TYPE, OUTPUT_CHUNK_TYPE> transformer)
-
-
Method Details
-
readChunk
public OUTPUT_CHUNK_TYPE readChunk(@NotNull @NotNull Iterator<ChunkWriter.FieldNodeInfo> fieldNodeIter, @NotNull PrimitiveIterator.OfLong bufferInfoIter, @NotNull @NotNull DataInput is, @Nullable @Nullable WritableChunk<Values> outChunk, int outOffset, int totalRows) throws IOException Description copied from interface:ChunkReader
Reads the given DataInput to extract the next Arrow buffer as a Deephaven Chunk.- Parameters:
fieldNodeIter
- iterator to read fields from the streambufferInfoIter
- iterator to read buffers from the streamis
- input stream containing buffers to be readoutChunk
- chunk to write tooutOffset
- offset within the outChunk to begin writingtotalRows
- total rows to write to the outChunk- Returns:
- a Chunk containing the data from the stream
- Throws:
IOException
- if an error occurred while reading the stream
-