# All Classes and Interfaces

Class
Description
Connection<T>
The `Connection` interface provides support for implementing the Connection Types, according to the specification from https://relay.dev/graphql/connections.htm#sec-Connection-Types.
Cursor
This class provides a Base64-encoded cursor which is used for paginated results, according to the specification from https://relay.dev/graphql/connections.htm#sec-Cursor.
Edge<T>
The `Edge` interface provides support for implementing the Edge Types, according to the specification from https://relay.dev/graphql/connections.htm#sec-Edge-Types.
GenericConnection<T>
As per https://relay.dev/graphql/connections.htm a "connection" is a page of results for a paginated query.
GenericConnection.Builder<T>
GraphQLCacheProvider
A `GraphQLCacheProvider` is responsible for caching GraphQL queries, in order to provide support for persisted queries for the `GraphQLServlet`.
LazyLoadingField<T>
Helper for a single lazy-loading value
LazyLoadingMap<K,T>
A `HashMap` that optionally uses Suppliers to provide its values.
PageInfo
The `PageInfo` interface provides support for implementing the identically named type from https://relay.dev/graphql/connections.htm#sec-Connection-Types.Fields.PageInfo.
QueryExecutor
A `QueryExecutor` service allows consumers to validate and execute GraphQL queries directly.
ScalarConversionException
Exception thrown by Scalar converters
SchemaProvider
SelectedField
Interface to wrap information from GraphQL SelectedField.
SelectionSet
Interface to wrap information from GraphQL DataFetchingFieldSelectionSet.
SlingDataFetcher<T>
Retrieves data for a given GraphQL field.
SlingDataFetcherEnvironment
Provides contextual information to the {#link SlingDataFetcher}
SlingGraphQLException
The `SlingGraphQLException` defines the class of errors that can be thrown by the `org.apache.sling.graphql.core` bundle.
SlingScalarConverter<T,X>
A service that parses and serializes a custom GraphQL Scalar by converting between an eXternal type X an an inTernal one T.
SlingTypeResolver<T>
Resolves the GraphQL object type of a given result item.
SlingTypeResolverEnvironment<T>
Provides contextual information to the `SlingTypeResolver`
ValidationResult
The `ValidationResult` interface defines the result returned by `QueryExecutor.validate(String, Map, Resource, String[])` and helps additional services to pre-validate a GraphQL query without executing it.