Class ProcedureDefinition

java.lang.Object
org.apache.flink.table.procedures.ProcedureDefinition
All Implemented Interfaces:
FunctionDefinition

@Internal public class ProcedureDefinition extends Object implements FunctionDefinition
Definition of a procedure. We consider procedure as a kind of function, so make it implement FunctionDefinition.
  • Field Details

    • PROCEDURE_CALL

      public static final String PROCEDURE_CALL
      the name for the methods to be involved in the procedure.
      See Also:
  • Constructor Details

    • ProcedureDefinition

      public ProcedureDefinition(Procedure procedure)
  • Method Details

    • getKind

      public FunctionKind getKind()
      Description copied from interface: FunctionDefinition
      Returns the kind of function this definition describes.
      Specified by:
      getKind in interface FunctionDefinition
    • getTypeInference

      public TypeInference getTypeInference(DataTypeFactory typeFactory)
      Description copied from interface: FunctionDefinition
      Returns the logic for performing type inference of a call to this function definition.

      The type inference process is responsible for inferring unknown types of input arguments, validating input arguments, and producing result types. The type inference process happens independent of a function body. The output of the type inference is used to search for a corresponding runtime implementation.

      Instances of type inference can be created by using TypeInference.newBuilder().

      See BuiltInFunctionDefinitions for concrete usage examples.

      Specified by:
      getTypeInference in interface FunctionDefinition