Class WindowOffsetProcessor

java.lang.Object
org.apache.druid.query.operator.window.value.WindowValueProcessorBase
org.apache.druid.query.operator.window.value.WindowOffsetProcessor
All Implemented Interfaces:
Processor

public class WindowOffsetProcessor extends WindowValueProcessorBase
  • Constructor Details

    • WindowOffsetProcessor

      public WindowOffsetProcessor(String inputColumn, String outputColumn, int offset)
  • Method Details

    • getOffset

      public int getOffset()
    • process

      public RowsAndColumns process(RowsAndColumns input)
      Description copied from interface: Processor
      Applies the logic of the processor to a RowsAndColumns object
      Parameters:
      input - the incoming RowsAndColumns object
      Returns:
      the transformed RowsAndColumns object
    • validateEquivalent

      public boolean validateEquivalent(Processor otherProcessor)
      Description copied from interface: Processor
      Validates the equivalence of the Processors. This is similar to @{code .equals} but is its own method so that it can ignore certain fields that would be important for a true equality check. Namely, two Processors defined the same way but with different output names can be considered equivalent even though they are not equal.

      This primarily exists to simplify tests, where this equivalence can be used to validate that the Processors created by the SQL planner are actually equivalent to what we expect without needing to be overly dependent on how the planner names the output columns

      Specified by:
      validateEquivalent in interface Processor
      Overrides:
      validateEquivalent in class WindowValueProcessorBase
      Parameters:
      otherProcessor - the processor to test equivalence of
      Returns:
      boolean identifying if these processors should be considered equivalent to each other.
    • toString

      public String toString()
      Overrides:
      toString in class WindowValueProcessorBase