Package viaduct.x.javaapi.codegen
Class JavaResolverGenerator
-
- All Implemented Interfaces:
public final class JavaResolverGeneratorGenerator for Java resolver base classes from GraphQL fields with @resolver directive.
Generates abstract base classes that tenant developers extend to implement field resolvers. Each resolver class is annotated with @ResolverFor and contains a Context inner class that delegates to FieldExecutionContext.
-
-
Method Summary
Modifier and Type Method Description static Stringgenerate(ResolversFileModel model)Generates the Java resolvers source code as a string. static FilegenerateToFile(ResolversFileModel model, File resolverGeneratedDir)Generates the Java resolvers source code and writes it to a file. -
-
Method Detail
-
generate
static String generate(ResolversFileModel model)
Generates the Java resolvers source code as a string.
- Parameters:
model- the resolvers file model- Returns:
the generated Java source code
-
generateToFile
static File generateToFile(ResolversFileModel model, File resolverGeneratedDir)
Generates the Java resolvers source code and writes it to a file.
Resolver files are written to package subdirectories under the output directory. The package is {tenantPackage}.resolverbases, so the file path will be: {resolverGeneratedDir}/{tenantPackage/path}/resolverbases/{TypeName}Resolvers.java
- Parameters:
model- the resolvers file modelresolverGeneratedDir- the output directory- Returns:
the file that was written
-
-
-
-