Class SnapshotBackedTableLocation<LOCATION_TYPE extends AbstractTableLocation>
java.lang.Object
io.deephaven.util.referencecounting.ReferenceCounted
io.deephaven.engine.liveness.ReferenceCountedLivenessReferent
io.deephaven.engine.liveness.ReferenceCountedLivenessNode
io.deephaven.enterprise.locations.local.SnapshotBackedTableLocation<LOCATION_TYPE>
- Type Parameters:
LOCATION_TYPE-
- All Implemented Interfaces:
LogOutputAppendable,LivenessManager,LivenessNode,LivenessReferent,TableLocation,TableLocationState,NamedImplementation
public class SnapshotBackedTableLocation<LOCATION_TYPE extends AbstractTableLocation>
extends ReferenceCountedLivenessNode
implements TableLocation
A
TableLocation backed by a TableLocationMetadataIndex.TableLocationSnapshot that does not refresh and tries to avoid creating
the actual location until it is truly needed.-
Nested Class Summary
Nested classes/interfaces inherited from interface io.deephaven.engine.table.impl.locations.TableLocation
TableLocation.Listener -
Field Summary
Fields inherited from interface io.deephaven.engine.table.impl.locations.TableLocationState
NULL_SIZE, NULL_TIME -
Constructor Summary
ConstructorsConstructorDescriptionSnapshotBackedTableLocation(@NotNull TableKey tableKey, @NotNull TableLocationKey tableLocationKey, io.deephaven.shadow.enterprise.com.illumon.iris.db.v2.locations.local.TableLocationMetadataIndex.LocationSnapshot snapshot, @NotNull Supplier<LOCATION_TYPE> locationFactory) -
Method Summary
Modifier and TypeMethodDescription@NotNull ColumnLocationgetColumnLocation(@NotNull CharSequence name) @Nullable BasicDataIndexgetDataIndex(@NotNull String... columns) @NotNull ImmutableTableLocationKeygetKey()longlonggetSize()@NotNull List<SortColumn>@NotNull Object@NotNull ImmutableTableKeybooleanhasDataIndex(@NotNull String... columns) voidrefresh()voidsubscribe(@NotNull TableLocation.Listener listener) booleanvoidunsubscribe(@NotNull TableLocation.Listener listener) Methods inherited from class io.deephaven.engine.liveness.ReferenceCountedLivenessNode
getWeakReference, initializeTransientFieldsForLiveness, onReferenceCountAtZero, tryManage, tryUnmanage, tryUnmanageMethods inherited from class io.deephaven.engine.liveness.ReferenceCountedLivenessReferent
destroy, dropReference, tryRetainReferenceMethods inherited from class io.deephaven.util.referencecounting.ReferenceCounted
append, decrementReferenceCount, forceReferenceCountToZero, getReferenceCountDebug, incrementReferenceCount, resetReferenceCount, toString, tryDecrementReferenceCount, tryIncrementReferenceCountMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface io.deephaven.engine.liveness.LivenessManager
manage, unmanage, unmanageMethods inherited from interface io.deephaven.engine.liveness.LivenessReferent
dropReference, getReferentDescription, getWeakReference, retainReference, tryRetainReferenceMethods inherited from interface io.deephaven.util.type.NamedImplementation
getImplementationNameMethods inherited from interface io.deephaven.engine.table.impl.locations.TableLocation
append, getColumnLocation, getDataIndex, getDataIndexColumns, getKey, getSortedColumns, getTableKey, hasDataIndex, refresh, subscribe, supportsSubscriptions, toGenericString, toStringDetailed, toStringHelper, unsubscribeMethods inherited from interface io.deephaven.engine.table.impl.locations.TableLocationState
copyStateValuesTo, getLastModifiedTimeMillis, getStateLock
-
Constructor Details
-
SnapshotBackedTableLocation
public SnapshotBackedTableLocation(@NotNull @NotNull TableKey tableKey, @NotNull @NotNull TableLocationKey tableLocationKey, @NotNull io.deephaven.shadow.enterprise.com.illumon.iris.db.v2.locations.local.TableLocationMetadataIndex.LocationSnapshot snapshot, @NotNull @NotNull Supplier<LOCATION_TYPE> locationFactory) - Parameters:
tableKey- Table key for the table this location belongs totableLocationKey- Table location key that identifies this location
-
-
Method Details
-
getRowSet
- Specified by:
getRowSetin interfaceTableLocationState
-
getSize
public long getSize()- Specified by:
getSizein interfaceTableLocationState
-
getTableKey
- Specified by:
getTableKeyin interfaceTableLocation
-
getKey
- Specified by:
getKeyin interfaceTableLocation
-
supportsSubscriptions
public boolean supportsSubscriptions()- Specified by:
supportsSubscriptionsin interfaceTableLocation
-
subscribe
- Specified by:
subscribein interfaceTableLocation
-
unsubscribe
- Specified by:
unsubscribein interfaceTableLocation
-
refresh
public void refresh()- Specified by:
refreshin interfaceTableLocation
-
getSortedColumns
- Specified by:
getSortedColumnsin interfaceTableLocation
-
getDataIndexColumns
- Specified by:
getDataIndexColumnsin interfaceTableLocation
-
hasDataIndex
- Specified by:
hasDataIndexin interfaceTableLocation
-
getDataIndex
- Specified by:
getDataIndexin interfaceTableLocation
-
getColumnLocation
- Specified by:
getColumnLocationin interfaceTableLocation
-
getStateLock
- Specified by:
getStateLockin interfaceTableLocationState
-
getLastModifiedTimeMillis
public long getLastModifiedTimeMillis()- Specified by:
getLastModifiedTimeMillisin interfaceTableLocationState
-