Class TableSubscription
java.lang.Object
io.deephaven.web.client.api.event.HasEventHandling
io.deephaven.web.client.api.subscription.AbstractTableSubscription
io.deephaven.web.client.api.subscription.TableSubscription
Represents a non-viewport subscription to a table, and all data currently known to be present in the subscribed
columns. This class handles incoming snapshots and deltas, and fires events to consumers to notify of data changes.
Unlike
TableViewportSubscription
, the "original" table does not have a reference to this instance, only the
"private" table instance does, since the original cannot modify the subscription, and the private instance must
forward data to it.
Represents a subscription to the table on the server. Changes made to the table will not be reflected here - the
subscription must be closed and a new one optioned to see those changes. The event model is slightly different from
viewports to make it less expensive to compute for large tables.-
Nested Class Summary
Nested classes/interfaces inherited from class io.deephaven.web.client.api.subscription.AbstractTableSubscription
AbstractTableSubscription.Status, AbstractTableSubscription.SubscriptionEventData, AbstractTableSubscription.SubscriptionRow, AbstractTableSubscription.UpdateEventData, AbstractTableSubscription.ViewportEventData
Nested classes/interfaces inherited from class io.deephaven.web.client.api.event.HasEventHandling
HasEventHandling.EventPair<T>
-
Field Summary
Fields inherited from class io.deephaven.web.client.api.subscription.AbstractTableSubscription
barrageSubscription, EVENT_UPDATED, rowStyleColumn, status, viewportRowSet
Fields inherited from class io.deephaven.web.client.api.event.HasEventHandling
INTERNAL_EVENT_RELEASED
-
Constructor Summary
ConstructorsConstructorDescriptionTableSubscription
(elemental2.core.JsArray<Column> columns, JsTable existingTable, Double updateIntervalMs) -
Method Summary
Modifier and TypeMethodDescriptionvoid
changeSubscription
(elemental2.core.JsArray<Column> columns, @JsNullable Double updateIntervalMs) Updates the subscription to use the given columns and update interval.elemental2.core.JsArray<Column>
The columns that were subscribed to when this subscription was createdprotected void
Methods inherited from class io.deephaven.web.client.api.subscription.AbstractTableSubscription
close, connection, hasValidSize, isClosed, isSubscriptionReady, makeColumnBitset, notifyUpdate, onStreamEnd, revive, sendBarrageSubscriptionRequest, size, state, subscriptionRequest
Methods inherited from class io.deephaven.web.client.api.event.HasEventHandling
addEventListener, addEventListenerOneShot, addEventListenerOneShot, failureHandled, fireCriticalEvent, fireCriticalEvent, fireEvent, fireEvent, fireEvent, hasListener, hasListeners, isSuppress, logPrefix, nextEvent, removeEventListener, suppressEvents, unsuppressEvents
-
Constructor Details
-
TableSubscription
-
-
Method Details
-
sendFirstSubscriptionRequest
protected void sendFirstSubscriptionRequest()- Specified by:
sendFirstSubscriptionRequest
in classAbstractTableSubscription
-
changeSubscription
public void changeSubscription(elemental2.core.JsArray<Column> columns, @JsNullable Double updateIntervalMs) Updates the subscription to use the given columns and update interval.- Parameters:
columns
- the new columns to subscribe toupdateIntervalMs
- the new update interval, or null/omit to use the default of one second
-
getColumns
Description copied from class:AbstractTableSubscription
The columns that were subscribed to when this subscription was created- Overrides:
getColumns
in classAbstractTableSubscription
- Returns:
Column
-