Class WebChunkReaderFactory
java.lang.Object
io.deephaven.web.client.api.barrage.WebChunkReaderFactory
- All Implemented Interfaces:
ChunkReader.Factory
Browser-compatible implementation of the
ChunkReader.Factory
, with a focus on reading from arrow types rather
than successfully round-tripping to the Java server.
Includes some specific workarounds to handle nullability that will make more sense for the browser.
-
Nested Class Summary
Nested Classes -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic <T> WritableObjectChunk<T,
Values> extractChunkFromInputStream
(DataInput is, Iterator<ChunkWriter.FieldNodeInfo> fieldNodeIter, PrimitiveIterator.OfLong bufferInfoIter, WebChunkReaderFactory.Mapper<T> mapper, WritableChunk<Values> outChunk, int outOffset, int totalRows) <T extends WritableChunk<Values>>
ChunkReader<T>newReader
(@NotNull BarrageTypeInfo<org.apache.arrow.flatbuf.Field> typeInfo, @NotNull BarrageOptions options) Returns aChunkReader
for the specified arguments.static <T,
WIRE_CHUNK_TYPE extends WritableChunk<Values>, CR extends ChunkReader<WIRE_CHUNK_TYPE>>
ChunkReader<WritableObjectChunk<T,Values>> transformToObject
(CR wireReader, BaseChunkReader.ChunkTransformer<WIRE_CHUNK_TYPE, WritableObjectChunk<T, Values>> wireTransform)
-
Constructor Details
-
WebChunkReaderFactory
public WebChunkReaderFactory()
-
-
Method Details
-
newReader
public <T extends WritableChunk<Values>> ChunkReader<T> newReader(@NotNull @NotNull BarrageTypeInfo<org.apache.arrow.flatbuf.Field> typeInfo, @NotNull @NotNull BarrageOptions options) Description copied from interface:ChunkReader.Factory
Returns aChunkReader
for the specified arguments.- Specified by:
newReader
in interfaceChunkReader.Factory
- Parameters:
typeInfo
- the type of data to read into a chunkoptions
- options for reading the stream- Returns:
- a ChunkReader based on the given options, factory, and type to read
-
extractChunkFromInputStream
public static <T> WritableObjectChunk<T,Values> extractChunkFromInputStream(DataInput is, Iterator<ChunkWriter.FieldNodeInfo> fieldNodeIter, PrimitiveIterator.OfLong bufferInfoIter, WebChunkReaderFactory.Mapper<T> mapper, WritableChunk<Values> outChunk, int outOffset, int totalRows) throws IOException - Throws:
IOException
-
transformToObject
public static <T,WIRE_CHUNK_TYPE extends WritableChunk<Values>, ChunkReader<WritableObjectChunk<T,CR extends ChunkReader<WIRE_CHUNK_TYPE>> Values>> transformToObject(CR wireReader, BaseChunkReader.ChunkTransformer<WIRE_CHUNK_TYPE, WritableObjectChunk<T, Values>> wireTransform)
-