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.SubView
Nested 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 int
appendAddColumns
(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 void
setRecordBatchLength
(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:
setRecordBatchLength
in 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:
appendAddColumns
in 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)
-