Class RangeJoinOperation
java.lang.Object
io.deephaven.engine.table.impl.rangejoin.RangeJoinOperation
- All Implemented Interfaces:
QueryTable.MemoizableOperation<QueryTable>
,QueryTable.Operation<QueryTable>
public class RangeJoinOperation
extends Object
implements QueryTable.MemoizableOperation<QueryTable>
Implementation for
QueryTable.rangeJoin(Table, Collection, RangeJoinMatch, Collection)
.-
Nested Class Summary
Nested classes/interfaces inherited from interface io.deephaven.engine.table.impl.QueryTable.Operation
QueryTable.Operation.Result<T extends DynamicNode & NotificationStepReceiver>
-
Constructor Summary
ConstructorDescriptionRangeJoinOperation
(@NotNull QueryTable leftTable, @NotNull Table rightTable, @NotNull Collection<? extends JoinMatch> exactMatches, @NotNull RangeJoinMatch rangeMatch, @NotNull Collection<? extends Aggregation> aggregations) -
Method Summary
Modifier and TypeMethodDescriptioninitialize
(boolean usePrev, long beforeClock) Initialize this operation.newSnapshotControl
(@NotNull QueryTable queryTable) boolean
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface io.deephaven.engine.table.impl.QueryTable.Operation
beginOperation
-
Constructor Details
-
RangeJoinOperation
public RangeJoinOperation(@NotNull @NotNull QueryTable leftTable, @NotNull @NotNull Table rightTable, @NotNull @NotNull Collection<? extends JoinMatch> exactMatches, @NotNull @NotNull RangeJoinMatch rangeMatch, @NotNull @NotNull Collection<? extends Aggregation> aggregations)
-
-
Method Details
-
snapshotNeeded
public boolean snapshotNeeded()- Specified by:
snapshotNeeded
in interfaceQueryTable.Operation<QueryTable>
-
newSnapshotControl
- Specified by:
newSnapshotControl
in interfaceQueryTable.Operation<QueryTable>
-
getDescription
- Specified by:
getDescription
in interfaceQueryTable.Operation<QueryTable>
- Returns:
- the description of this operation
-
getLogPrefix
- Specified by:
getLogPrefix
in interfaceQueryTable.Operation<QueryTable>
- Returns:
- the log prefix of this operation
-
initialize
Description copied from interface:QueryTable.Operation
Initialize this operation.- Specified by:
initialize
in interfaceQueryTable.Operation<QueryTable>
- 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.
-
getMemoizedOperationKey
- Specified by:
getMemoizedOperationKey
in interfaceQueryTable.MemoizableOperation<QueryTable>
- Returns:
- the key that should be used to memoize off of
-