Class RemoteDeephavenTableLocation
java.lang.Object
io.deephaven.engine.table.impl.locations.impl.SubscriptionAggregator<TableLocation.Listener>
io.deephaven.engine.table.impl.locations.impl.AbstractTableLocation
io.deephaven.enterprise.locations.remote.RemoteDeephavenTableLocation
- All Implemented Interfaces:
LogOutputAppendable
,DelegatingLivenessReferent
,LivenessReferent
,ColumnToCodecMappings
,TableLocation
,TableLocationState
,DeephavenFormatTableLocation
,io.deephaven.shadow.enterprise.com.fishlib.base.log.LogOutputAppendable
,io.deephaven.shadow.enterprise.com.illumon.iris.db.v2.locations.protocol.RequestResultHandler
,NamedImplementation
public class RemoteDeephavenTableLocation
extends AbstractTableLocation
implements DeephavenFormatTableLocation, io.deephaven.shadow.enterprise.com.illumon.iris.db.v2.locations.protocol.RequestResultHandler, ColumnToCodecMappings
A
TableLocation
implementation for remote table subscriptions discovered by a
io.deephaven.enterprise.tabledataservice.RemoteTableDataService.-
Nested Class Summary
Nested classes/interfaces inherited from interface io.deephaven.engine.table.impl.locations.TableLocation
TableLocation.Listener
-
Field Summary
Fields inherited from class io.deephaven.engine.table.impl.locations.impl.SubscriptionAggregator
subscriptions
Fields inherited from interface io.deephaven.engine.table.impl.ColumnToCodecMappings
EMPTY
Fields inherited from interface io.deephaven.shadow.enterprise.com.illumon.iris.db.v2.locations.protocol.RequestResultHandler
NULL
Fields inherited from interface io.deephaven.engine.table.impl.locations.TableLocationState
NULL_SIZE, NULL_TIME
-
Constructor Summary
ConstructorsConstructorDescriptionRemoteDeephavenTableLocation
(@NotNull io.deephaven.shadow.enterprise.com.illumon.iris.db.v2.locations.protocol.TableDataProtocolDriver driver, @NotNull EnterpriseTableKey tableKey, @NotNull EnterpriseTableLocationKey locationKey, @NotNull io.deephaven.shadow.enterprise.com.illumon.iris.db.tables.TableDefinition tableDefinition) Create a remote table location using the specifiedprotocol driver
for acquiring table data. -
Method Summary
Modifier and TypeMethodDescriptionprotected void
io.deephaven.shadow.enterprise.com.fishlib.base.log.LogOutput
append
(@NotNull io.deephaven.shadow.enterprise.com.fishlib.base.log.LogOutput logOutput) protected void
getCodecArgs
(@NotNull String columnName) getCodecName
(@NotNull String columnName) @NotNull List<SortColumn>
void
handleUpdate
(@NotNull TableLocationState source) boolean
hasDataIndex
(@NotNull String... columns) @Nullable BasicDataIndex
loadDataIndex
(@NotNull String... columns) protected final @NotNull io.deephaven.enterprise.locations.remote.RemoteDeephavenColumnLocation
makeColumnLocation
(@NotNull String name) protected <T> boolean
matchSubscriptionToken
(T token) void
onComplete
(@NotNull io.deephaven.shadow.enterprise.com.illumon.iris.db.v2.locations.protocol.TableDataRequest request) void
onRejection
(@NotNull io.deephaven.shadow.enterprise.com.illumon.iris.db.v2.locations.protocol.TableDataRequest request, String rejectionMessage, io.deephaven.shadow.enterprise.com.illumon.iris.db.v2.locations.protocol.TableDataProtocol.RequestRejectionType requestRejectionType) void
onTableLocationKeyAdded
(io.deephaven.shadow.enterprise.com.illumon.iris.db.v2.locations.TableLocationKey locationKey) void
onTableLocationKeyRemoved
(io.deephaven.shadow.enterprise.com.illumon.iris.db.v2.locations.TableLocationKey locationKey) void
onTableLocationState
(io.deephaven.shadow.enterprise.com.illumon.iris.db.v2.locations.TableLocationState state) void
onTimeout
(@NotNull io.deephaven.shadow.enterprise.com.illumon.iris.db.v2.locations.protocol.TableDataRequest request) void
refresh()
Methods inherited from class io.deephaven.engine.table.impl.locations.impl.AbstractTableLocation
asLivenessReferent, clearColumnLocations, deliverInitialSnapshot, destroy, getColumnLocation, getDataIndex, getKey, getLastModifiedTimeMillis, getRowSet, getSize, getStateLock, getTableKey, handleUpdate, toString
Methods inherited from class io.deephaven.engine.table.impl.locations.impl.SubscriptionAggregator
activationFailed, activationSuccessful, checkHasSubscribers, postActivationHook, subscribe, supportsSubscriptions, unsubscribe
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface io.deephaven.engine.liveness.DelegatingLivenessReferent
dropReference, getWeakReference, tryRetainReference
Methods inherited from interface io.deephaven.engine.liveness.LivenessReferent
getReferentDescription, retainReference
Methods inherited from interface io.deephaven.util.type.NamedImplementation
getImplementationName
Methods inherited from interface io.deephaven.shadow.enterprise.com.illumon.iris.db.v2.locations.protocol.RequestResultHandler
checkHasSubscribers
Methods inherited from interface io.deephaven.engine.table.impl.locations.TableLocation
append, getColumnLocation, getDataIndex, getKey, getTableKey, subscribe, supportsSubscriptions, toGenericString, toStringDetailed, toStringHelper, unsubscribe
Methods inherited from interface io.deephaven.engine.table.impl.locations.TableLocationState
copyStateValuesTo, getLastModifiedTimeMillis, getRowSet, getSize, getStateLock
-
Constructor Details
-
RemoteDeephavenTableLocation
public RemoteDeephavenTableLocation(@NotNull @NotNull io.deephaven.shadow.enterprise.com.illumon.iris.db.v2.locations.protocol.TableDataProtocolDriver driver, @NotNull @NotNull EnterpriseTableKey tableKey, @NotNull @NotNull EnterpriseTableLocationKey locationKey, @NotNull @NotNull io.deephaven.shadow.enterprise.com.illumon.iris.db.tables.TableDefinition tableDefinition) Create a remote table location using the specifiedprotocol driver
for acquiring table data.- Parameters:
driver
- the drivertableKey
- theEnterpriseTableKey
identifying the tablelocationKey
- theEnterpriseTableLocationKey
identifying the column and internal partitionstableDefinition
-
-
-
Method Details
-
handleUpdate
- Overrides:
handleUpdate
in classAbstractTableLocation
-
activateUnderlyingDataSource
protected void activateUnderlyingDataSource()- Overrides:
activateUnderlyingDataSource
in classSubscriptionAggregator<TableLocation.Listener>
-
deactivateUnderlyingDataSource
protected void deactivateUnderlyingDataSource()- Overrides:
deactivateUnderlyingDataSource
in classSubscriptionAggregator<TableLocation.Listener>
-
matchSubscriptionToken
protected <T> boolean matchSubscriptionToken(@NotNull T token) - Overrides:
matchSubscriptionToken
in classSubscriptionAggregator<TableLocation.Listener>
-
refresh
public void refresh()- Specified by:
refresh
in interfaceTableLocation
-
getSortedColumns
- Specified by:
getSortedColumns
in interfaceTableLocation
-
getDataIndexColumns
- Specified by:
getDataIndexColumns
in interfaceTableLocation
-
hasDataIndex
- Specified by:
hasDataIndex
in interfaceTableLocation
-
makeColumnLocation
@NotNull protected final @NotNull io.deephaven.enterprise.locations.remote.RemoteDeephavenColumnLocation makeColumnLocation(@NotNull @NotNull String name) - Specified by:
makeColumnLocation
in classAbstractTableLocation
-
loadDataIndex
- Specified by:
loadDataIndex
in classAbstractTableLocation
-
onTimeout
public void onTimeout(@NotNull @NotNull io.deephaven.shadow.enterprise.com.illumon.iris.db.v2.locations.protocol.TableDataRequest request) - Specified by:
onTimeout
in interfaceio.deephaven.shadow.enterprise.com.illumon.iris.db.v2.locations.protocol.RequestResultHandler
-
onRejection
public void onRejection(@NotNull @NotNull io.deephaven.shadow.enterprise.com.illumon.iris.db.v2.locations.protocol.TableDataRequest request, String rejectionMessage, io.deephaven.shadow.enterprise.com.illumon.iris.db.v2.locations.protocol.TableDataProtocol.RequestRejectionType requestRejectionType) - Specified by:
onRejection
in interfaceio.deephaven.shadow.enterprise.com.illumon.iris.db.v2.locations.protocol.RequestResultHandler
-
onComplete
public void onComplete(@NotNull @NotNull io.deephaven.shadow.enterprise.com.illumon.iris.db.v2.locations.protocol.TableDataRequest request) - Specified by:
onComplete
in interfaceio.deephaven.shadow.enterprise.com.illumon.iris.db.v2.locations.protocol.RequestResultHandler
-
onTableLocationState
public void onTableLocationState(@NotNull io.deephaven.shadow.enterprise.com.illumon.iris.db.v2.locations.TableLocationState state) - Specified by:
onTableLocationState
in interfaceio.deephaven.shadow.enterprise.com.illumon.iris.db.v2.locations.protocol.RequestResultHandler
-
onTableLocationKeyAdded
public void onTableLocationKeyAdded(@NotNull io.deephaven.shadow.enterprise.com.illumon.iris.db.v2.locations.TableLocationKey locationKey) - Specified by:
onTableLocationKeyAdded
in interfaceio.deephaven.shadow.enterprise.com.illumon.iris.db.v2.locations.protocol.RequestResultHandler
-
onTableLocationKeyRemoved
public void onTableLocationKeyRemoved(@NotNull io.deephaven.shadow.enterprise.com.illumon.iris.db.v2.locations.TableLocationKey locationKey) - Specified by:
onTableLocationKeyRemoved
in interfaceio.deephaven.shadow.enterprise.com.illumon.iris.db.v2.locations.protocol.RequestResultHandler
-
append
public io.deephaven.shadow.enterprise.com.fishlib.base.log.LogOutput append(@NotNull @NotNull io.deephaven.shadow.enterprise.com.fishlib.base.log.LogOutput logOutput) - Specified by:
append
in interfaceDeephavenFormatTableLocation
- Specified by:
append
in interfaceio.deephaven.shadow.enterprise.com.fishlib.base.log.LogOutputAppendable
-
getCodecName
- Specified by:
getCodecName
in interfaceColumnToCodecMappings
-
getCodecArgs
- Specified by:
getCodecArgs
in interfaceColumnToCodecMappings
-