Update project name to Spring for GraphQL

Closes gh-255
This commit is contained in:
rstoyanchev
2022-01-13 12:15:39 +00:00
parent 10abd919ec
commit 7a7e2e87dc
9 changed files with 34 additions and 33 deletions

View File

@@ -1,4 +1,4 @@
# Spring GraphQL [![Build status](https://ci.spring.io/api/v1/teams/spring-graphql/pipelines/spring-graphql/jobs/build/badge)](https://ci.spring.io/teams/spring-graphql/pipelines/spring-graphql)
# Spring for GraphQL [![Build status](https://ci.spring.io/api/v1/teams/spring-graphql/pipelines/spring-graphql/jobs/build/badge)](https://ci.spring.io/teams/spring-graphql/pipelines/spring-graphql)
[GraphQL](https://graphql.org/) support for Spring applications with [GraphQL Java](https://github.com/graphql-java/graphql-java).
@@ -13,7 +13,7 @@ This project has reference documentation ([published](https://docs.spring.io/spr
## Continuous Integration Builds
Information regarding CI builds can be found in the [Spring GraphQL Concourse pipeline](ci/README.adoc) documentation.
Information regarding CI builds can be found in the project's [Concourse pipeline](ci/README.adoc) documentation.
## Stay in Touch

View File

@@ -9,7 +9,7 @@ ext {
bootVersion = "2.7.0-SNAPSHOT"
}
description = "Spring GraphQL"
description = "Spring for GraphQL"
subprojects {
apply plugin: 'io.spring.dependency-management'

View File

@@ -1,11 +1,11 @@
== Spring GraphQL Concourse pipeline
== Spring for GraphQL Concourse pipeline
The Spring GraphQL project is using https://concourse-ci.org/[Concourse] for its CI build and other automated tasks.
The Spring for GraphQL project is using https://concourse-ci.org/[Concourse] for its CI build and other automated tasks.
The Spring team has a dedicated Concourse instance available at https://ci.spring.io.
=== Setting up your development environment
If you're part of the Spring GraphQL team on GitHub, you can get access to CI management features.
If you're part of the Spring for GraphQL team on GitHub, you can get access to CI management features.
First, you need to go to https://ci.spring.io and install the client CLI for your platform (see bottom right of the screen).
You can then login with the instance using:

View File

@@ -102,7 +102,7 @@ jobs:
- "/**/spring-graphql-docs-*.zip"
properties:
"zip.name": "spring-graphql"
"zip.displayname": "Spring GraphQL"
"zip.displayname": "Spring for GraphQL"
"zip.deployed": "false"
"zip.type": "docs"
get_params:

View File

@@ -24,7 +24,7 @@ import org.springframework.web.context.request.RequestContextHolder;
/**
* {@link ThreadLocalAccessor} to expose a thread-bound RequestAttributes object to data
* fetchers in Spring GraphQL.
* fetchers in Spring for GraphQL.
*/
@Component
public class RequestAttributesAccessor implements ThreadLocalAccessor {

View File

@@ -3,7 +3,7 @@ plugins {
id 'org.asciidoctor.jvm.convert' version '3.3.2'
}
description = "Spring GraphQL reference documentation"
description = "Spring for GraphQL reference documentation"
configurations {
asciidoctorExtensions
@@ -38,7 +38,7 @@ ext.javadocLinks = [
] as String[]
/**
* Produce Javadoc for all Spring GraphQL modules in "build/docs/javadoc"
* Produce Javadoc for all Spring for GraphQL modules in "build/docs/javadoc"
*/
task api(type: Javadoc) {
group = "Documentation"
@@ -78,7 +78,7 @@ task api(type: Javadoc) {
/**
* Generate the Spring GraphQL Reference documentation from "src/docs/asciidoc"
* Generate the Spring for GraphQL Reference documentation from "src/docs/asciidoc"
* in "build/docs/reference/html".
*/
asciidoctor {

View File

@@ -1,7 +1,8 @@
<html lang="en">
<body>
<p>
This is the public API documentation for the <a href="https://spring.io/projects/spring-graphql" target="_top">Spring GraphQL project</a>.
This is the public API documentation for the
<a href="https://spring.io/projects/spring-graphql" target="_top">Spring for GraphQL project</a>.
</p>
</body>
</html>

View File

@@ -1,4 +1,4 @@
= Spring GraphQL Documentation
= Spring for GraphQL Documentation
Brian Clozel; Andreas Marek; Rossen Stoyanchev
include::attributes.adoc[]
@@ -6,12 +6,12 @@ include::attributes.adoc[]
[[overview]]
== Overview
Spring GraphQL provides support for Spring applications built on
Spring for GraphQL provides support for Spring applications built on
https://www.graphql-java.com/[GraphQL Java]. It is a joint collaboration between both
teams. Our shared philosophy is to be less opinionated and more focused on
comprehensive and wide-ranging support.
Spring GraphQL is the successor of the
Spring for GraphQL is the successor of the
https://github.com/graphql-java/graphql-java-spring[GraphQL Java Spring] project from
the GraphQL Java team. It aims to be the foundation for all Spring, GraphQL applications.
@@ -25,7 +25,7 @@ To get started, please see the <<boot-graphql>> and the <<samples>> sections.
[[requirements]]
== Requirements
Spring GraphQL requires the following as a baseline:
Spring for GraphQL requires the following as a baseline:
* JDK8
* Spring Framework 5.3
@@ -37,7 +37,7 @@ Spring GraphQL requires the following as a baseline:
[[web-transports]]
== Web Transports
Spring GraphQL supports GraphQL requests over HTTP and over WebSocket.
Spring for GraphQL supports GraphQL requests over HTTP and over WebSocket.
@@ -62,7 +62,7 @@ bean and using the `RouterFunctions` from Spring MVC or WebFlux to create the ro
Boot starter does this, see <<boot-graphql-web>> for details or check
`GraphQlWebMvcAutoConfiguration` or `GraphQlWebFluxAutoConfiguration` for example config.
The Spring GraphQL repository contains a Spring MVC
The Spring for GraphQL repository contains a Spring MVC
{github-main-branch}/samples/webmvc-http[HTTP sample] application.
@@ -103,7 +103,7 @@ https://github.com/enisdenjo/graphql-ws#recipes[recipes] for client use.
starter has options to enable this, see <<boot-graphql-web>> for details or check
`GraphQlWebMvcAutoConfiguration` or `GraphQlWebFluxAutoConfiguration` for example config.
The Spring GraphQL repository contains a WebFlux
The Spring for GraphQL repository contains a WebFlux
{github-main-branch}/samples/webflux-websocket[WebSocket sample] application.
@@ -166,7 +166,7 @@ see <<boot-graphql-web>> for details, or check `GraphQlWebMvcAutoConfiguration`
[[execution]]
== Request Execution
`GraphQlService` is the main Spring GraphQL abstraction to call GraphQL Java to execute
`GraphQlService` is the main Spring abstraction to call GraphQL Java to execute
requests. Underlying transports, such as the <<web-transports>>, delegate to `GraphQlService` to
handle requests.
@@ -179,7 +179,7 @@ the `graphql.GraphQL` instance.
[[execution-graphqlsource]]
=== `GraphQLSource`
`GraphQlSource` is a core Spring GraphQL abstraction for access to the
`GraphQlSource` is a core Spring abstraction for access to the
`graphql.GraphQL` instance to use for request execution. It provides a builder API to
initialize GraphQL Java and build a `GraphQlSource`.
@@ -213,7 +213,7 @@ You can use `RuntimeWiringConfigurer` to register:
`AnnotatedControllerConfigurer`, which detects annotated, `DataFetcher` handler methods.
The Spring Boot starter adds the `AnnotatedControllerConfigurer` by default.
The Spring GraphQL Boot starter detects beans of type `RuntimeWiringConfigurer`.
The Spring for GraphQL Boot starter detects beans of type `RuntimeWiringConfigurer`.
[[execution-graphqlsource-default-type-resolver]]
@@ -252,7 +252,7 @@ transport layer, such as from a WebFlux request handling, see
[[execution-context]]
=== Context Propagation
Spring GraphQL provides support to transparently propagate context from the <<web-transports>>,
Spring for GraphQL provides support to transparently propagate context from the <<web-transports>>,
through the GraphQL engine, and to `DataFetcher` and other components it invokes.
This includes both `ThreadLocal` context from the Spring MVC request handling thread and
Reactor `Context` from the WebFlux processing pipeline.
@@ -265,7 +265,7 @@ A `DataFetcher` and other components invoked by GraphQL Java may not always exec
the same thread as the Spring MVC handler, for example if an asynchronous
<<web-interception, `WebInterceptor`>> or `DataFetcher` switches to a different thread.
Spring GraphQL supports propagating `ThreadLocal` values from the Servlet container
Spring for GraphQL supports propagating `ThreadLocal` values from the Servlet container
thread to the thread a `DataFetcher` and other components invoked by the GraphQL engine
execute on. To do this, an application needs to create a `ThreadLocalAccessor` to extract
`ThreadLocal` values of interest:
@@ -316,7 +316,7 @@ added by <<web-interception, WebInterceptor>> components.
GraphQL Java applications can register a `DataFetcherExceptionHandler` to decide how to
represent exceptions from the data layer in the "errors" section of the GraphQL response.
Spring GraphQL has a built-in `DataFetcherExceptionHandler` that is configured for use
Spring for GraphQL has a built-in `DataFetcherExceptionHandler` that is configured for use
by the <<execution-graphqlsource>> builder. It enables applications to register one or
more Spring `DataFetcherExceptionResolver` components that are invoked sequentially
until one resolves the `Exception` to a list of `graphql.GraphQLError` objects.
@@ -326,7 +326,7 @@ would be sufficient to extend `DataFetcherExceptionResolverAdapter` and override
one of its `resolveToSingleError` or `resolveToMultipleErrors` methods that
resolve exceptions synchronously.
A `GraphQLError` can be assigned an `graphql.ErrorClassification`. Spring GraphQL
A `GraphQLError` can be assigned an `graphql.ErrorClassification`. Spring for GraphQL
defines an `ErrorType` enum with common, error classification categories:
- `BAD_REQUEST`
@@ -365,7 +365,7 @@ defers until it is ready to batch load all related entities as one.
- `DataLoader` additionally maintains a cache of previously loaded entities that can
further improve efficiency when the same entity is in multiple places of the response.
Spring GraphQL provides:
Spring for GraphQL provides:
- `BatchLoaderRegistry` that accepts and stores registrations of batch loading functions;
This is used in `ExecutionGraphQlService` to make `DataLoader` registrations per request.
@@ -389,7 +389,7 @@ functions for entities.
[[data-querydsl]]
=== Querydsl
Spring GraphQL supports use of http://www.querydsl.com/[Querydsl] to fetch data through
Spring for GraphQL supports use of http://www.querydsl.com/[Querydsl] to fetch data through
the Spring Data
https://docs.spring.io/spring-data/commons/docs/current/reference/html/#core.extensions[Querydsl extension].
Querydsl provides a flexible yet typesafe approach to express query predicates by
@@ -612,7 +612,7 @@ detects `@GraphQlRepository` beans and applies the `GraphQLTypeVisitor`.
[[controllers]]
== Annotated Controllers
Spring GraphQL provides an annotation-based programming model where `@Controller`
Spring for GraphQL provides an annotation-based programming model where `@Controller`
components use annotations to declare handler methods with flexible method signatures to
fetch the data for specific GraphQL fields. For example:
@@ -631,7 +631,7 @@ fetch the data for specific GraphQL fields. For example:
<1> Bind this method to a query, i.e. a field under the Query type.
<2> Determine the query from the method name if not declared on the annotation.
Spring GraphQL uses `RuntimeWiring.Builder` to register the above handler method as a
Spring for GraphQL uses `RuntimeWiring.Builder` to register the above handler method as a
`graphql.schema.DataFetcher` for the query named "hello".
@@ -1113,7 +1113,7 @@ To apply more fine-grained security, add Spring Security annotations such as
the GraphQL response. This should work due to <<execution-context>> that aims to make
Security, and other context, available at the data fetching level.
The Spring GraphQL repository contains samples for
The Spring for GraphQL repository contains samples for
{github-main-branch}/samples/webmvc-http-security[Spring MVC] and for
{github-main-branch}/samples/webflux-security[WebFlux].
@@ -1130,7 +1130,7 @@ include::testing.adoc[leveloffset=+1]
[[samples]]
== Samples
This Spring GraphQL repository contains {github-main-branch}/samples[sample applications] for
This Spring for GraphQL repository contains {github-main-branch}/samples[sample applications] for
various scenarios.
You can run those by cloning this repository and running main application classes from

View File

@@ -317,5 +317,5 @@ To test with the <<index#web-interception>> chain, you can create `WebGraphQlTes
WebGraphQlTester graphQlTester = WebGraphQlTester.builder(handler).build();
----
Currently, Spring GraphQL does not support testing with a WebSocket client, and it
Currently, Spring for GraphQL does not support testing with a WebSocket client, and it
cannot be used for integration test of GraphQL over WebSocket requests.