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.ViewportEventDataNested 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, viewportRowSetFields 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 TypeMethodDescriptionvoidchangeSubscription(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 voidMethods inherited from class io.deephaven.web.client.api.subscription.AbstractTableSubscription
close, connection, hasValidSize, isClosed, isSubscriptionReady, makeColumnBitset, notifyUpdate, onStreamEnd, revive, sendBarrageSubscriptionRequest, size, state, subscriptionRequestMethods 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:
sendFirstSubscriptionRequestin 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:AbstractTableSubscriptionThe columns that were subscribed to when this subscription was created- Overrides:
getColumnsin classAbstractTableSubscription- Returns:
Column
-