Use a Factory for Function Overloading
If a user-defined function must support multiple signatures, you must implement the corresponding factory interface:
UserDefinedFunctionAdapterFactory for plain functions
UserDefinedAggregateFunctionAdapterFactory for aggregate analytic functions
UserDefinedWindowFunctionAdapterFactory for window analytic functions
For more information on the advantages of user-defined function factories and examples. See the RAQL User-Defined Function API reference.