Package io.deephaven.engine.table.impl
Class DeferredViewTable.TableReference
java.lang.Object
io.deephaven.util.referencecounting.ReferenceCounted
io.deephaven.engine.liveness.ReferenceCountedLivenessReferent
io.deephaven.engine.liveness.ReferenceCountedLivenessNode
io.deephaven.engine.liveness.LivenessArtifact
io.deephaven.engine.table.impl.DeferredViewTable.TableReference
- All Implemented Interfaces:
LogOutputAppendable
,LivenessManager
,LivenessNode
,LivenessReferent
,Serializable
- Enclosing class:
- DeferredViewTable
The table reference hides the table underlying table from us.
- See Also:
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic class
-
Field Summary
-
Method Summary
Modifier and TypeMethodDescriptionget()
Returns the table in a form that the user can run queries on it.Get the definition, without instantiating the table.getWithWhere
(WhereFilter... whereFilters) Get the table in a form that the user can run queries on it.final boolean
Is the node updating?selectDistinctInternal
(Collection<? extends Selectable> columns) If possible to execute a selectDistinct without instantiating the full table, then do so.Methods inherited from class io.deephaven.engine.liveness.LivenessArtifact
manageWithCurrentScope
Methods inherited from class io.deephaven.engine.liveness.ReferenceCountedLivenessNode
getWeakReference, initializeTransientFieldsForLiveness, onReferenceCountAtZero, tryManage, tryUnmanage, tryUnmanage
Methods inherited from class io.deephaven.engine.liveness.ReferenceCountedLivenessReferent
destroy, dropReference, tryRetainReference
Methods inherited from class io.deephaven.util.referencecounting.ReferenceCounted
append, decrementReferenceCount, forceReferenceCountToZero, getReferenceCountDebug, incrementReferenceCount, resetReferenceCount, toString, tryDecrementReferenceCount, tryIncrementReferenceCount
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.LivenessManager
manage
Methods inherited from interface io.deephaven.engine.liveness.LivenessNode
unmanage, unmanage
Methods inherited from interface io.deephaven.engine.liveness.LivenessReferent
dropReference, getReferentDescription, retainReference, tryRetainReference
-
Field Details
-
table
-
-
Method Details
-
isRefreshing
public final boolean isRefreshing()Is the node updating?- Returns:
- true if the node is updating; false otherwise.
-
get
Returns the table in a form that the user can run queries on it. This may be as simple as returning a reference, but for uncoalesced tables, this means we need to do the work to instantiate it.- Returns:
- the table
-
getDefinition
Get the definition, without instantiating the table.- Returns:
- the definition of the table
-
getWithWhere
protected DeferredViewTable.TableReference.TableAndRemainingFilters getWithWhere(WhereFilter... whereFilters) Get the table in a form that the user can run queries on it. All the filters that can be run efficiently should be run before coalescing the full table should be run. Other filters are returned in the remainingFilters field.- Parameters:
whereFilters
- filters to maybe apply before returning the table- Returns:
- the instantiated table and a set of filters that were not applied.
-
selectDistinctInternal
If possible to execute a selectDistinct without instantiating the full table, then do so. Otherwise, return null.- Parameters:
columns
- the columns to selectDistinct- Returns:
- null if the operation can not be performed on an uncoalesced table, otherwise a new table with the distinct values from strColumns.
-