Package io.deephaven.pivot
Class PivotBarrageMessageWriterImpl
java.lang.Object
io.deephaven.extensions.barrage.BarrageMessageWriterImpl
io.deephaven.pivot.PivotBarrageMessageWriterImpl
- All Implemented Interfaces:
BarrageMessageWriter,SafeCloseable,AutoCloseable
-
Nested Class Summary
Nested classes/interfaces inherited from class io.deephaven.extensions.barrage.BarrageMessageWriterImpl
BarrageMessageWriterImpl.ArrowFactory, BarrageMessageWriterImpl.BitSetWriter, BarrageMessageWriterImpl.ByteArrayWriter, BarrageMessageWriterImpl.Factory, BarrageMessageWriterImpl.ModColumnWriter, BarrageMessageWriterImpl.RecordBatchMessageView, BarrageMessageWriterImpl.RowSetShiftDataWriter, BarrageMessageWriterImpl.RowSetWriter, BarrageMessageWriterImpl.SubViewNested classes/interfaces inherited from interface io.deephaven.extensions.barrage.BarrageMessageWriter
BarrageMessageWriter.MessageView -
Constructor Summary
ConstructorsConstructorDescriptionPivotBarrageMessageWriterImpl(@NotNull BarrageMessage message, @NotNull ChunkWriter<Chunk<Values>>[] chunkWriters, @NotNull BarragePerformanceLog.WriteMetricsConsumer writeConsumer) Create a barrage stream writer that can slice and dice the barrage message for delivery to clients. -
Method Summary
Modifier and TypeMethodDescriptionprotected intappendAddColumns(BarrageMessageWriterImpl.RecordBatchMessageView view, long startRange, int targetBatchSize, Consumer<DefensiveDrainable> addStream, ChunkWriter.FieldNodeListener fieldNodeListener, ChunkWriter.BufferListener bufferListener, ColumnChunksWriter<Chunk<Values>>[] addColumnData) getSubView(BarrageSubscriptionOptions options, boolean isInitialSnapshot, boolean isFullSubscription, @Nullable RowSet viewport, boolean reverseViewport, @Nullable RowSet keyspaceViewportPrev, @Nullable RowSet keyspaceViewport, @Nullable BitSet subscribedColumns, @Nullable RowSet columnsViewport, PivotTable.PivotSnapshot snapshot) protected voidsetRecordBatchLength(BarrageMessageWriterImpl.RecordBatchMessageView view, com.google.flatbuffers.FlatBufferBuilder header, int numRows) Methods inherited from class io.deephaven.extensions.barrage.BarrageMessageWriterImpl
addEmpty, addNonEmpty, appendAddColumns, appendModColumns, close, findWriterForOffset, getMessage, getSnapshotView, getSnapshotView, getSubView, getSubView, writeHeader
-
Constructor Details
-
PivotBarrageMessageWriterImpl
public PivotBarrageMessageWriterImpl(@NotNull @NotNull BarrageMessage message, @NotNull @NotNull ChunkWriter<Chunk<Values>>[] chunkWriters, @NotNull BarragePerformanceLog.WriteMetricsConsumer writeConsumer) Create a barrage stream writer that can slice and dice the barrage message for delivery to clients.- Parameters:
message- the writer takes ownership of the message and its internal objectschunkWriters- the chunk chunkWriterswriteConsumer- a method that can be used to record write time
-
-
Method Details
-
setRecordBatchLength
protected void setRecordBatchLength(BarrageMessageWriterImpl.RecordBatchMessageView view, com.google.flatbuffers.FlatBufferBuilder header, int numRows) - Overrides:
setRecordBatchLengthin classBarrageMessageWriterImpl
-
appendAddColumns
protected int appendAddColumns(BarrageMessageWriterImpl.RecordBatchMessageView view, long startRange, int targetBatchSize, Consumer<DefensiveDrainable> addStream, ChunkWriter.FieldNodeListener fieldNodeListener, ChunkWriter.BufferListener bufferListener, ColumnChunksWriter<Chunk<Values>>[] addColumnData) throws IOException - Overrides:
appendAddColumnsin classBarrageMessageWriterImpl- Throws:
IOException
-
getSubView
public BarrageMessageWriter.MessageView getSubView(BarrageSubscriptionOptions options, boolean isInitialSnapshot, boolean isFullSubscription, @Nullable @Nullable RowSet viewport, boolean reverseViewport, @Nullable @Nullable RowSet keyspaceViewportPrev, @Nullable @Nullable RowSet keyspaceViewport, @Nullable @Nullable BitSet subscribedColumns, @Nullable @Nullable RowSet columnsViewport, @NotNull PivotTable.PivotSnapshot snapshot)
-