Interface ObjectProcessor.Provider

All Known Subinterfaces:
NamedObjectProcessor.Provider
Enclosing interface:
ObjectProcessor<T>

public static interface ObjectProcessor.Provider
An abstraction over ObjectProcessor that provides the same logical object processor for different input types.
  • Method Summary

    Modifier and Type
    Method
    Description
    Set<io.deephaven.qst.type.Type<?>>
    The supported input types for processor(Type).
    int
    The number of output types for the processors.
    List<io.deephaven.qst.type.Type<?>>
    The output types for the processors.
    <T> ObjectProcessor<? super T>
    processor(io.deephaven.qst.type.Type<T> inputType)
    Creates an object processor that can process the inputType.
  • Method Details

    • inputTypes

      Set<io.deephaven.qst.type.Type<?>> inputTypes()
      The supported input types for processor(Type).
      Returns:
      the supported input types
    • outputTypes

      List<io.deephaven.qst.type.Type<?>> outputTypes()
      The output types for the processors. Equivalent to the processors' ObjectProcessor.outputTypes().
      Returns:
      the output types
    • outputSize

      int outputSize()
      The number of output types for the processors. Equivalent to the processors' ObjectProcessor.outputSize().
      Returns:
      the number of output types
    • processor

      <T> ObjectProcessor<? super T> processor(io.deephaven.qst.type.Type<T> inputType)
      Creates an object processor that can process the inputType. This will successfully create a processor when inputType is one of, or extends from one of, inputTypes(). Otherwise, an IllegalArgumentException will be thrown.
      Type Parameters:
      T - the input type
      Parameters:
      inputType - the input type
      Returns:
      the object processor