File tree Expand file tree Collapse file tree
src/main/java/org/opensearch/sql/api/function Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -109,15 +109,15 @@ Use `UnifiedFunctionRepository` to discover and load unified functions:
109109UnifiedFunctionRepository repository = new UnifiedFunctionRepository (context);
110110
111111// Load all available functions
112- List<FunctionDescriptor > allFunctions = repository. loadFunctions();
113- for (FunctionDescriptor descriptor : allFunctions) {
112+ List<UnifiedFunctionDescriptor > allFunctions = repository. loadFunctions();
113+ for (UnifiedFunctionDescriptor descriptor : allFunctions) {
114114 String name = descriptor. getFunctionName();
115115 UnifiedFunctionBuilder builder = descriptor. getBuilder();
116116 // Use builder to create function instances
117117}
118118
119119// Load a specific function by name
120- FunctionDescriptor upperDescriptor = repository. loadFunction(" UPPER" );
120+ UnifiedFunctionDescriptor upperDescriptor = repository. loadFunction(" UPPER" ) . orElseThrow( );
121121```
122122
123123#### Creating and Using Functions
@@ -126,7 +126,7 @@ Functions are created using builders with specific input types:
126126
127127``` java
128128// Get function descriptor
129- FunctionDescriptor descriptor = repository. loadFunction(" UPPER" );
129+ UnifiedFunctionDescriptor descriptor = repository. loadFunction(" UPPER" ) . orElseThrow( );
130130
131131// Build function with specific input types
132132UnifiedFunction upperFunc = descriptor. getBuilder(). build(List . of(" VARCHAR" ));
Original file line number Diff line number Diff line change 55
66package org .opensearch .sql .api .function ;
77
8- import java .io .Serializable ;
98import java .util .List ;
109import java .util .Optional ;
1110import java .util .stream .Collectors ;
@@ -67,7 +66,7 @@ public static class UnifiedFunctionDescriptor {
6766
6867 /** Builder for creating {@link UnifiedFunction} instances with specific input types. */
6968 @ FunctionalInterface
70- public interface UnifiedFunctionBuilder extends Serializable {
69+ public interface UnifiedFunctionBuilder {
7170
7271 /**
7372 * Builds a {@link UnifiedFunction} instance for the specified input types.
You can’t perform that action at this time.
0 commit comments