Java Example: Defining Parameters
The following code fragment demonstrates adding a single parameter to the Java add2ints UDSF example. The getParameterType()
method defines a single integer parameter that is named constant.
package com.mycompany.example; import com.vertica.sdk.*; public class Add2intsWithConstantFactory extends ScalarFunctionFactory { @Override public void getPrototype(ServerInterface srvInterface, ColumnTypes argTypes, ColumnTypes returnType) { argTypes.addInt(); argTypes.addInt(); returnType.addInt(); } @Override public void getReturnType(ServerInterface srvInterface, SizedColumnTypes argTypes, SizedColumnTypes returnType) { returnType.addInt("sum"); } // Defines the parameters for this UDSF. Works similarly to defining // arguments and return types. public void getParameterType(ServerInterface srvInterface, SizedColumnTypes parameterTypes) { // One INTEGER parameter named constant parameterTypes.addInt("constant"); } @Override public ScalarFunction createScalarFunction(ServerInterface srvInterface) { return new Add2intsWithConstant(); } }
See the Vertica Java SDK entry for SizedColumnTypes
for a full list of the data-type-specific methods you can call to define parameters.