Interface QueryTable.Operation

All Known Subinterfaces:
QueryTable.MemoizableOperation
All Known Implementing Classes:
FlattenOperation, PreemptiveUpdatesTable.Operation, ReverseOperation, SliceLikeOperation, SortOperation, TableUpdateValidator, WouldMatchOperation
Enclosing class:
QueryTable

public static interface QueryTable.Operation
  • Method Details

    • getDescription

      String getDescription()
      Returns:
      the description of this operation
    • getLogPrefix

      String getLogPrefix()
      Returns:
      the log prefix of this operation
    • newSwapListener

      default ShiftAwareSwapListener newSwapListener​(com.fishlib.io.logger.Logger log, QueryTable queryTable)
    • initialize

      QueryTable.Operation.Result initialize​(boolean usePrev, long beforeClock)
      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.