Package org.springframework.graphql.execution
@NonNullApi
@NonNullFields
package org.springframework.graphql.execution
Support for GraphQL request execution, including abstractions to configure and invoke
GraphQL
.-
ClassDescriptionAbstractGraphQlSourceBuilder<B extends GraphQlSource.Builder<B>>Implementation of
GraphQlSource.Builder
that leaves it to subclasses to initializeGraphQLSchema
.Registry for functions to batch load data values, given a set of keys.Spec to complete the registration of a batch loading function.TypeResolver
that tries to find a GraphQL Object type based on the class name of a value returned from aDataFetcher
.TypeDefinitionConfigurer
that generates "Connection" types by looking for fields whose type definition name ends in "Connection", considered by the GraphQL Cursor Connections Specification to be a Connection Type, and adding the required type definitions if they don't already exist.Helper to use a singleContextSnapshotFactory
instance by saving and obtaining it to and from Reactor and GraphQL contexts.Contract to resolve exceptions fromDataFetcher
s.Adapter forDataFetcherExceptionResolver
that pre-implements the asynchronous contract and exposes the following synchronous protected methods:DataFetcherExceptionResolverAdapter.resolveToSingleError(java.lang.Throwable, graphql.schema.DataFetchingEnvironment)
DataFetcherExceptionResolverAdapter.resolveToMultipleErrors(java.lang.Throwable, graphql.schema.DataFetchingEnvironment)
Contract for access to theDataLoaderRegistry
for each request for the purpose of registeringDataLoader
instances.Default implementation ofBatchLoaderRegistry
that stores batch loader registrations.ExecutionGraphQlService
that uses aGraphQlSource
to obtain aGraphQL
instance and perform query execution.Common categories to use to classify for exceptions raised byDataFetcher
's that can enable a client to make automated decisions.ContextAccessor
that enables support for reading and writing values to and from aGraphQLContext
.Strategy to resolve aGraphQL
and aGraphQLSchema
.GraphQlSource.Builder<B extends GraphQlSource.Builder<B>>Common configuration options for allGraphQlSource
builders, independent of howGraphQLSchema
is created.GraphQlSource
builder that relies on parsing schema definition files and uses aRuntimeWiring
to create the underlyingGraphQLSchema
.Indicates that no GraphQL schema definition was configured on theGraphQlSource.Builder
.ReactiveDataFetcherExceptionResolver
for Spring Security exceptions.Callbacks that allow applying changes to theRuntimeWiring.Builder
inGraphQlSource.Builder
.Inspect schema mappings on startup to ensure the following: Schema fields have either aDataFetcher
registration or a corresponding Class property.Strategy to resolve the Java class(es) for aGraphQLObjectType
, effectively the reverse ofTypeResolver
, for schema inspection purposes.Helps to configureSchemaMappingInspector
.Report produced as a result of inspecting schema mappings.Information about a schema type skipped during the inspection.ThreadLocalAccessor
to extract and restore security context throughSecurityContextHolder
.DataFetcherExceptionResolver
for Spring Security exceptions.SpecializedDataFetcher
that exposes additional details such as return type information.Contract for a component that is invoked when a GraphQL subscriptionPublisher
ends with an error.Adapter forSubscriptionExceptionResolver
that pre-implements the asynchronous contract and exposes the following synchronous protected methods:SubscriptionExceptionResolverAdapter.resolveToSingleError(java.lang.Throwable)
SubscriptionExceptionResolverAdapter.resolveToMultipleErrors(java.lang.Throwable)
An exception raised after a GraphQL subscriptionPublisher
ends with an exception, and after that exception has been resolved to GraphQL errors.Callback that allows customizing theTypeDefinitionRegistry
created from parsed schema files.HelpsGraphQLTypeVisitor
s to recognize whether a type is the subscription type.