public interface GraphQLCodegenConfiguration
Modifier and Type | Method and Description |
---|---|
ApiInterfaceStrategy |
getApiInterfaceStrategy()
Specifies the strategy of generating api interfaces.
|
java.lang.String |
getApiNamePrefix()
Sets the prefix for GraphQL api classes (query, mutation, subscription).
|
ApiNamePrefixStrategy |
getApiNamePrefixStrategy()
Sets prefix strategy for GraphQL api classes (query, mutation, subscription).
|
java.lang.String |
getApiNameSuffix()
Sets the suffix for GraphQL api classes (query, mutation, subscription).
|
java.lang.String |
getApiPackageName()
Java package for generated api classes (Query, Mutation, Subscription).
|
java.lang.String |
getApiReturnListType()
Return type for api methods (query / subscription) that return list values
For example: `reactor.core.publisher.Flux`
|
java.lang.String |
getApiReturnType()
Return type for api methods (query / subscription)
For example: `reactor.core.publisher.Mono`
|
ApiRootInterfaceStrategy |
getApiRootInterfaceStrategy()
Specifies the strategy of generating root api interface.
|
java.util.Map<java.lang.String,java.util.List<java.lang.String>> |
getCustomAnnotationsMapping()
Can be used to supply custom annotations (serializers) for scalars.
|
java.util.Map<java.lang.String,java.lang.String> |
getCustomTypesMapping()
Can be used to supply custom mappings for scalars.
|
java.util.Map<java.lang.String,java.util.List<java.lang.String>> |
getDirectiveAnnotationsMapping()
Map GraphQL directives to Java annotations.
|
java.util.Set<java.lang.String> |
getFieldsWithoutResolvers()
Fields that DO NOT require Resolvers should be defined here in format: TypeName, TypeName.fieldName, @directive
If just type is specified, then all fields of this type will NOT have resolvers
Can be used in conjunction with "generateExtensionFieldsResolvers"
|
java.util.Set<java.lang.String> |
getFieldsWithResolvers()
Fields that require Resolvers should be defined here in format: TypeName, TypeName.fieldName, @directive
If just type is specified, then all fields of this type will have resolvers
|
java.lang.Boolean |
getGenerateApis()
Specifies whether api classes should be generated.
|
java.lang.Boolean |
getGenerateBuilder()
Specifies whether generated model classes should have builder.
|
java.lang.Boolean |
getGenerateClient()
Specifies whether client-side classes should be generated for each query, mutation and subscription.
|
java.lang.Boolean |
getGenerateDataFetchingEnvironmentArgumentInApis()
If true, then graphql.schema.DataFetchingEnvironment env will be added as a last argument
to all methods of root type resolvers and field resolvers.
|
java.lang.Boolean |
getGenerateEqualsAndHashCode()
Specifies whether generated model classes should have equals and hashCode methods defined.
|
java.lang.Boolean |
getGenerateExtensionFieldsResolvers()
Whether all fields in extensions (
extend type and extend interface ) should be present
in Resolver interface instead of the type class itself. |
java.lang.Boolean |
getGenerateImmutableModels()
Specifies whether generated model classes should be immutable.
|
java.lang.Boolean |
getGenerateModelsForRootTypes()
Specifies whether model classes should be generated for Query/Subscription/Mutation.
|
java.lang.Boolean |
getGenerateParameterizedFieldsResolvers()
If true, then generate separate `Resolver` interface for parametrized fields.
|
java.lang.Boolean |
getGenerateToString()
Specifies whether generated model classes should have toString method defined.
|
java.lang.String |
getModelNamePrefix()
Sets the prefix for GraphQL model classes (type, input, interface, enum, union).
|
java.lang.String |
getModelNameSuffix()
Sets the suffix for GraphQL model classes (type, input, interface, enum, union).
|
java.lang.String |
getModelPackageName()
Java package for generated model classes (type, input, interface, enum, union).
|
java.lang.String |
getModelValidationAnnotation()
Annotation for mandatory (NonNull) fields.
|
java.lang.String |
getMutationResolverParentInterface()
Interface that will be added as "extend" to all generated api Mutation interfaces.
|
java.lang.String |
getPackageName()
Java package for generated classes.
|
java.lang.String |
getParametrizedInputSuffix()
The suffix for `ParametrizedInput` classes.
|
java.lang.String |
getQueryResolverParentInterface()
Interface that will be added as "extend" to all generated api Query interfaces.
|
RelayConfig |
getRelayConfig()
Relay-related configurations.
|
java.lang.String |
getRequestSuffix()
The suffix for `Request` classes.
|
java.lang.String |
getResolverParentInterface()
Interface that will be added as "extend" to all generated TypeResolver interfaces.
|
java.lang.Integer |
getResponseProjectionMaxDepth()
Interface that will be limit depth when `all$` invoke which has subProjections
|
java.lang.String |
getResponseProjectionSuffix()
The suffix for `ResponseProjection` classes.
|
java.lang.String |
getResponseSuffix()
The suffix for `Response` classes.
|
java.lang.String |
getSubscriptionResolverParentInterface()
Interface that will be added as "extend" to all generated api Subscription interfaces.
|
java.lang.String |
getSubscriptionReturnType()
Return type for subscription methods.
|
java.lang.String |
getTypeResolverPrefix()
Sets the prefix for GraphQL type resolver classes.
|
java.lang.String |
getTypeResolverSuffix()
Sets the suffix for GraphQL type resolver classes.
|
java.lang.Boolean |
getUseOptionalForNullableReturnTypes()
Specifies whether return types of generated API interface should be wrapped into
java.util.Optional |
java.util.Map<java.lang.String,java.lang.String> getCustomTypesMapping()
Supports: * Map of (GraphqlObjectName.fieldName) to (JavaType) * Map of (GraphqlType) to (JavaType)
e.g.: DateTime --- String e.g.: Price.amount --- java.math.BigDecimal
java.util.Map<java.lang.String,java.util.List<java.lang.String>> getCustomAnnotationsMapping()
Supports: * Map of (GraphqlObjectName.fieldName) to (JavaAnnotation) * Map of (GraphqlType) to (JavaAnnotation)
e.g.: EpochMillis --- @com.fasterxml.jackson.databind.annotation.JsonDeserialize(using = com.example.json.EpochMillisScalarDeserializer.class)
java.util.Map<java.lang.String,java.util.List<java.lang.String>> getDirectiveAnnotationsMapping()
Directive fields can be used in annotations via: {{directiveFieldName}}
Example:
schema: directive @auth (roles: [String])
directiveAnnotationsMapping: auth --- @org.springframework.security.access.annotation.Secured({{roles}})
java.lang.Boolean getGenerateApis()
java.lang.Boolean getGenerateModelsForRootTypes()
ApiRootInterfaceStrategy getApiRootInterfaceStrategy()
ApiInterfaceStrategy getApiInterfaceStrategy()
java.lang.String getPackageName()
java.lang.String getApiPackageName()
java.lang.String getModelPackageName()
java.lang.String getModelNamePrefix()
java.lang.String getModelNameSuffix()
ApiNamePrefixStrategy getApiNamePrefixStrategy()
java.lang.String getApiNamePrefix()
java.lang.String getApiNameSuffix()
java.lang.String getModelValidationAnnotation()
java.lang.String getApiReturnType()
java.lang.String getApiReturnListType()
java.lang.String getSubscriptionReturnType()
java.lang.Boolean getGenerateBuilder()
java.lang.Boolean getGenerateEqualsAndHashCode()
java.lang.Boolean getGenerateImmutableModels()
java.lang.Boolean getGenerateToString()
java.lang.Boolean getGenerateParameterizedFieldsResolvers()
java.lang.String getTypeResolverPrefix()
java.lang.String getTypeResolverSuffix()
java.lang.Boolean getGenerateExtensionFieldsResolvers()
extend type
and extend interface
) should be present
in Resolver interface instead of the type class itself.extend type
and extend interface
)
should be present in Resolver interface instead of the type class itself.java.lang.Boolean getGenerateDataFetchingEnvironmentArgumentInApis()
RelayConfig getRelayConfig()
java.util.Set<java.lang.String> getFieldsWithResolvers()
E.g.: "Person.friends" E.g.: "Person" E.g.: "@customResolver"
java.util.Set<java.lang.String> getFieldsWithoutResolvers()
E.g.: "Person.friends" E.g.: "Person" E.g.: "@noResolver"
java.lang.Boolean getUseOptionalForNullableReturnTypes()
java.util.Optional
java.util.Optional
java.lang.Boolean getGenerateClient()
java.lang.String getRequestSuffix()
java.lang.String getResponseSuffix()
java.lang.String getResponseProjectionSuffix()
java.lang.String getParametrizedInputSuffix()
java.lang.String getQueryResolverParentInterface()
java.lang.String getMutationResolverParentInterface()
java.lang.String getSubscriptionResolverParentInterface()
java.lang.String getResolverParentInterface()
java.lang.Integer getResponseProjectionMaxDepth()