Package io.deephaven.engine.table.impl
Interface QueryTable.Operation<T extends DynamicNode & NotificationStepReceiver>
- All Known Subinterfaces:
QueryTable.MemoizableOperation<T>
- All Known Implementing Classes:
BarrageMessageProducer.Operation
,FlattenOperation
,RangeJoinOperation
,ReverseOperation
,SliceLikeOperation
,SortOperation
,TableUpdateValidator
,WouldMatchOperation
- Enclosing class:
- QueryTable
public static interface QueryTable.Operation<T extends DynamicNode & NotificationStepReceiver>
-
Nested Class Summary
Modifier and TypeInterfaceDescriptionstatic class
The resulting table and listener of the operation. -
Method Summary
Modifier and TypeMethodDescriptiondefault SafeCloseable
beginOperation
(@NotNull QueryTable parent) Perform pre-instantiation work.initialize
(boolean usePrev, long beforeClock) Initialize this operation.default OperationSnapshotControl
newSnapshotControl
(QueryTable parent) default boolean
-
Method Details
-
snapshotNeeded
default boolean snapshotNeeded() -
getDescription
String getDescription()- Returns:
- the description of this operation
-
getLogPrefix
String getLogPrefix()- Returns:
- the log prefix of this operation
-
beginOperation
Perform pre-instantiation work.- Parameters:
parent
- The parent table for the operation- Returns:
- A
SafeCloseable
that will beclosed
when the operation is complete, whether successful or not
-
newSnapshotControl
-
initialize
Initialize this operation.- Parameters:
usePrev
- data from the previous cycle should be used (otherwise use this cycle)beforeClock
- the clock value that we captured before the function began; the function can use this value to bail out early if it notices something has gone wrong.- Returns:
- the result table / listener if successful, null if it should be retried.
-