Skip to content

Commit bae62c3

Browse files
committed
Adapt to latest Spring GraphQL changes
This commit adapts to the latest Spring GraphQL changes, renaming `GraphQlService` to `ExecutionGraphQlService` as well as the `WebInterceptor` contract to `WebGraphQlHandlerInterceptor`. See spring-projects/spring-graphql#332
1 parent a2959bb commit bae62c3

File tree

13 files changed

+41
-41
lines changed

13 files changed

+41
-41
lines changed

spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/graphql/GraphQlAutoConfiguration.java

+5-4
Original file line numberDiff line numberDiff line change
@@ -41,12 +41,12 @@
4141
import org.springframework.context.annotation.Bean;
4242
import org.springframework.core.io.Resource;
4343
import org.springframework.core.io.support.ResourcePatternResolver;
44-
import org.springframework.graphql.GraphQlService;
44+
import org.springframework.graphql.ExecutionGraphQlService;
4545
import org.springframework.graphql.data.method.annotation.support.AnnotatedControllerConfigurer;
4646
import org.springframework.graphql.execution.BatchLoaderRegistry;
4747
import org.springframework.graphql.execution.DataFetcherExceptionResolver;
4848
import org.springframework.graphql.execution.DefaultBatchLoaderRegistry;
49-
import org.springframework.graphql.execution.ExecutionGraphQlService;
49+
import org.springframework.graphql.execution.DefaultExecutionGraphQlService;
5050
import org.springframework.graphql.execution.GraphQlSource;
5151
import org.springframework.graphql.execution.RuntimeWiringConfigurer;
5252

@@ -123,8 +123,9 @@ public BatchLoaderRegistry batchLoaderRegistry() {
123123

124124
@Bean
125125
@ConditionalOnMissingBean
126-
public GraphQlService graphQlService(GraphQlSource graphQlSource, BatchLoaderRegistry batchLoaderRegistry) {
127-
ExecutionGraphQlService service = new ExecutionGraphQlService(graphQlSource);
126+
public ExecutionGraphQlService executionGraphQlService(GraphQlSource graphQlSource,
127+
BatchLoaderRegistry batchLoaderRegistry) {
128+
DefaultExecutionGraphQlService service = new DefaultExecutionGraphQlService(graphQlSource);
128129
service.addDataLoaderRegistrar(batchLoaderRegistry);
129130
return service;
130131
}

spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/graphql/reactive/GraphQlWebFluxAutoConfiguration.java

+5-5
Original file line numberDiff line numberDiff line change
@@ -39,10 +39,10 @@
3939
import org.springframework.context.annotation.Bean;
4040
import org.springframework.context.annotation.Configuration;
4141
import org.springframework.core.log.LogMessage;
42-
import org.springframework.graphql.GraphQlService;
42+
import org.springframework.graphql.ExecutionGraphQlService;
4343
import org.springframework.graphql.execution.GraphQlSource;
4444
import org.springframework.graphql.web.WebGraphQlHandler;
45-
import org.springframework.graphql.web.WebInterceptor;
45+
import org.springframework.graphql.web.WebGraphQlHandlerInterceptor;
4646
import org.springframework.graphql.web.webflux.GraphQlHttpHandler;
4747
import org.springframework.graphql.web.webflux.GraphQlWebSocketHandler;
4848
import org.springframework.graphql.web.webflux.GraphiQlHandler;
@@ -77,7 +77,7 @@
7777
@AutoConfiguration(after = GraphQlAutoConfiguration.class)
7878
@ConditionalOnWebApplication(type = ConditionalOnWebApplication.Type.REACTIVE)
7979
@ConditionalOnClass({ GraphQL.class, GraphQlHttpHandler.class })
80-
@ConditionalOnBean(GraphQlService.class)
80+
@ConditionalOnBean(ExecutionGraphQlService.class)
8181
@EnableConfigurationProperties(GraphQlCorsProperties.class)
8282
public class GraphQlWebFluxAutoConfiguration {
8383

@@ -94,8 +94,8 @@ public GraphQlHttpHandler graphQlHttpHandler(WebGraphQlHandler webGraphQlHandler
9494

9595
@Bean
9696
@ConditionalOnMissingBean
97-
public WebGraphQlHandler webGraphQlHandler(GraphQlService service,
98-
ObjectProvider<WebInterceptor> interceptorsProvider) {
97+
public WebGraphQlHandler webGraphQlHandler(ExecutionGraphQlService service,
98+
ObjectProvider<WebGraphQlHandlerInterceptor> interceptorsProvider) {
9999
return WebGraphQlHandler.builder(service)
100100
.interceptors(interceptorsProvider.orderedStream().collect(Collectors.toList())).build();
101101
}

spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/graphql/servlet/GraphQlWebMvcAutoConfiguration.java

+5-5
Original file line numberDiff line numberDiff line change
@@ -42,11 +42,11 @@
4242
import org.springframework.context.annotation.Bean;
4343
import org.springframework.context.annotation.Configuration;
4444
import org.springframework.core.log.LogMessage;
45-
import org.springframework.graphql.GraphQlService;
45+
import org.springframework.graphql.ExecutionGraphQlService;
4646
import org.springframework.graphql.execution.GraphQlSource;
4747
import org.springframework.graphql.execution.ThreadLocalAccessor;
4848
import org.springframework.graphql.web.WebGraphQlHandler;
49-
import org.springframework.graphql.web.WebInterceptor;
49+
import org.springframework.graphql.web.WebGraphQlHandlerInterceptor;
5050
import org.springframework.graphql.web.webmvc.GraphQlHttpHandler;
5151
import org.springframework.graphql.web.webmvc.GraphQlWebSocketHandler;
5252
import org.springframework.graphql.web.webmvc.GraphiQlHandler;
@@ -81,7 +81,7 @@
8181
@AutoConfiguration(after = GraphQlAutoConfiguration.class)
8282
@ConditionalOnWebApplication(type = ConditionalOnWebApplication.Type.SERVLET)
8383
@ConditionalOnClass({ GraphQL.class, GraphQlHttpHandler.class })
84-
@ConditionalOnBean(GraphQlService.class)
84+
@ConditionalOnBean(ExecutionGraphQlService.class)
8585
@EnableConfigurationProperties(GraphQlCorsProperties.class)
8686
public class GraphQlWebMvcAutoConfiguration {
8787

@@ -95,8 +95,8 @@ public GraphQlHttpHandler graphQlHttpHandler(WebGraphQlHandler webGraphQlHandler
9595

9696
@Bean
9797
@ConditionalOnMissingBean
98-
public WebGraphQlHandler webGraphQlHandler(GraphQlService service,
99-
ObjectProvider<WebInterceptor> interceptorsProvider,
98+
public WebGraphQlHandler webGraphQlHandler(ExecutionGraphQlService service,
99+
ObjectProvider<WebGraphQlHandlerInterceptor> interceptorsProvider,
100100
ObjectProvider<ThreadLocalAccessor> accessorsProvider) {
101101
return WebGraphQlHandler.builder(service)
102102
.interceptors(interceptorsProvider.orderedStream().collect(Collectors.toList()))

spring-boot-project/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/graphql/GraphQlAutoConfigurationTests.java

+3-3
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@
3434
import org.springframework.context.annotation.Configuration;
3535
import org.springframework.core.io.ByteArrayResource;
3636
import org.springframework.core.io.ClassPathResource;
37-
import org.springframework.graphql.GraphQlService;
37+
import org.springframework.graphql.ExecutionGraphQlService;
3838
import org.springframework.graphql.data.method.annotation.support.AnnotatedControllerConfigurer;
3939
import org.springframework.graphql.execution.BatchLoaderRegistry;
4040
import org.springframework.graphql.execution.DataFetcherExceptionResolver;
@@ -58,7 +58,7 @@ void shouldContributeDefaultBeans() {
5858
this.contextRunner.run((context) -> {
5959
assertThat(context).hasSingleBean(GraphQlSource.class);
6060
assertThat(context).hasSingleBean(BatchLoaderRegistry.class);
61-
assertThat(context).hasSingleBean(GraphQlService.class);
61+
assertThat(context).hasSingleBean(ExecutionGraphQlService.class);
6262
assertThat(context).hasSingleBean(AnnotatedControllerConfigurer.class);
6363
});
6464
}
@@ -175,7 +175,7 @@ void shouldConfigureCustomBatchLoaderRegistry() {
175175
assertThat(context).hasSingleBean(BatchLoaderRegistry.class);
176176
assertThat(context.getBean("customBatchLoaderRegistry"))
177177
.isSameAs(context.getBean(BatchLoaderRegistry.class));
178-
assertThat(context.getBean(GraphQlService.class))
178+
assertThat(context.getBean(ExecutionGraphQlService.class))
179179
.extracting("dataLoaderRegistrars",
180180
InstanceOfAssertFactories.list(DataLoaderRegistrar.class))
181181
.containsOnly(context.getBean(BatchLoaderRegistry.class));

spring-boot-project/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/graphql/data/GraphQlQueryByExampleAutoConfigurationTests.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@
2828
import org.springframework.context.annotation.Configuration;
2929
import org.springframework.data.repository.CrudRepository;
3030
import org.springframework.data.repository.query.QueryByExampleExecutor;
31-
import org.springframework.graphql.GraphQlService;
31+
import org.springframework.graphql.ExecutionGraphQlService;
3232
import org.springframework.graphql.data.GraphQlRepository;
3333
import org.springframework.graphql.test.tester.GraphQlServiceTester;
3434

@@ -54,7 +54,7 @@ class GraphQlQueryByExampleAutoConfigurationTests {
5454
@Test
5555
void shouldRegisterDataFetcherForQueryByExampleRepositories() {
5656
this.contextRunner.run((context) -> {
57-
GraphQlService graphQlService = context.getBean(GraphQlService.class);
57+
ExecutionGraphQlService graphQlService = context.getBean(ExecutionGraphQlService.class);
5858
GraphQlServiceTester graphQlTester = GraphQlServiceTester.create(graphQlService);
5959
graphQlTester.document("{ bookById(id: 1) {name}}").execute().path("bookById.name").entity(String.class)
6060
.isEqualTo("Test title");

spring-boot-project/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/graphql/data/GraphQlQuerydslAutoConfigurationTests.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@
2828
import org.springframework.context.annotation.Configuration;
2929
import org.springframework.data.querydsl.QuerydslPredicateExecutor;
3030
import org.springframework.data.repository.CrudRepository;
31-
import org.springframework.graphql.GraphQlService;
31+
import org.springframework.graphql.ExecutionGraphQlService;
3232
import org.springframework.graphql.data.GraphQlRepository;
3333
import org.springframework.graphql.test.tester.GraphQlServiceTester;
3434
import org.springframework.graphql.test.tester.GraphQlTester;
@@ -55,7 +55,7 @@ class GraphQlQuerydslAutoConfigurationTests {
5555
@Test
5656
void shouldRegisterDataFetcherForQueryDslRepositories() {
5757
this.contextRunner.run((context) -> {
58-
GraphQlService graphQlService = context.getBean(GraphQlService.class);
58+
ExecutionGraphQlService graphQlService = context.getBean(ExecutionGraphQlService.class);
5959
GraphQlTester graphQlTester = GraphQlServiceTester.create(graphQlService);
6060
graphQlTester.document("{ bookById(id: 1) {name}}").execute().path("bookById.name").entity(String.class)
6161
.isEqualTo("Test title");

spring-boot-project/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/graphql/data/GraphQlReactiveQueryByExampleAutoConfigurationTests.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727
import org.springframework.context.annotation.Configuration;
2828
import org.springframework.data.repository.query.ReactiveQueryByExampleExecutor;
2929
import org.springframework.data.repository.reactive.ReactiveCrudRepository;
30-
import org.springframework.graphql.GraphQlService;
30+
import org.springframework.graphql.ExecutionGraphQlService;
3131
import org.springframework.graphql.data.GraphQlRepository;
3232
import org.springframework.graphql.test.tester.GraphQlServiceTester;
3333
import org.springframework.graphql.test.tester.GraphQlTester;
@@ -54,7 +54,7 @@ class GraphQlReactiveQueryByExampleAutoConfigurationTests {
5454
@Test
5555
void shouldRegisterDataFetcherForQueryByExampleRepositories() {
5656
this.contextRunner.run((context) -> {
57-
GraphQlService graphQlService = context.getBean(GraphQlService.class);
57+
ExecutionGraphQlService graphQlService = context.getBean(ExecutionGraphQlService.class);
5858
GraphQlTester graphQlTester = GraphQlServiceTester.create(graphQlService);
5959
graphQlTester.document("{ bookById(id: 1) {name}}").execute().path("bookById.name").entity(String.class)
6060
.isEqualTo("Test title");

spring-boot-project/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/graphql/data/GraphQlReactiveQuerydslAutoConfigurationTests.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727
import org.springframework.context.annotation.Configuration;
2828
import org.springframework.data.querydsl.ReactiveQuerydslPredicateExecutor;
2929
import org.springframework.data.repository.reactive.ReactiveCrudRepository;
30-
import org.springframework.graphql.GraphQlService;
30+
import org.springframework.graphql.ExecutionGraphQlService;
3131
import org.springframework.graphql.data.GraphQlRepository;
3232
import org.springframework.graphql.test.tester.GraphQlServiceTester;
3333
import org.springframework.graphql.test.tester.GraphQlTester;
@@ -54,7 +54,7 @@ class GraphQlReactiveQuerydslAutoConfigurationTests {
5454
@Test
5555
void shouldRegisterDataFetcherForQueryDslRepositories() {
5656
this.contextRunner.run((context) -> {
57-
GraphQlService graphQlService = context.getBean(GraphQlService.class);
57+
ExecutionGraphQlService graphQlService = context.getBean(ExecutionGraphQlService.class);
5858
GraphQlTester graphQlTester = GraphQlServiceTester.create(graphQlService);
5959
graphQlTester.document("{ bookById(id: 1) {name}}").execute().path("bookById.name").entity(String.class)
6060
.isEqualTo("Test title");

spring-boot-project/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/graphql/reactive/GraphQlWebFluxAutoConfigurationTests.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@
3434
import org.springframework.context.annotation.Configuration;
3535
import org.springframework.graphql.execution.RuntimeWiringConfigurer;
3636
import org.springframework.graphql.web.WebGraphQlHandler;
37-
import org.springframework.graphql.web.WebInterceptor;
37+
import org.springframework.graphql.web.WebGraphQlHandlerInterceptor;
3838
import org.springframework.graphql.web.webflux.GraphQlHttpHandler;
3939
import org.springframework.graphql.web.webflux.GraphQlWebSocketHandler;
4040
import org.springframework.http.HttpHeaders;
@@ -172,7 +172,7 @@ RuntimeWiringConfigurer bookDataFetcher() {
172172
static class CustomWebInterceptor {
173173

174174
@Bean
175-
WebInterceptor customWebInterceptor() {
175+
WebGraphQlHandlerInterceptor customWebGraphQlHandlerInterceptor() {
176176
return (webInput, interceptorChain) -> interceptorChain.next(webInput)
177177
.doOnNext((output) -> output.getResponseHeaders().add("X-Custom-Header", "42"));
178178
}

spring-boot-project/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/graphql/servlet/GraphQlWebMvcAutoConfigurationTests.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@
3232
import org.springframework.context.annotation.Configuration;
3333
import org.springframework.graphql.execution.RuntimeWiringConfigurer;
3434
import org.springframework.graphql.web.WebGraphQlHandler;
35-
import org.springframework.graphql.web.WebInterceptor;
35+
import org.springframework.graphql.web.WebGraphQlHandlerInterceptor;
3636
import org.springframework.graphql.web.webmvc.GraphQlHttpHandler;
3737
import org.springframework.graphql.web.webmvc.GraphQlWebSocketHandler;
3838
import org.springframework.http.HttpHeaders;
@@ -183,7 +183,7 @@ RuntimeWiringConfigurer bookDataFetcher() {
183183
static class CustomWebInterceptor {
184184

185185
@Bean
186-
WebInterceptor customWebInterceptor() {
186+
WebGraphQlHandlerInterceptor customWebGraphQlHandlerInterceptor() {
187187
return (webInput, interceptorChain) -> interceptorChain.next(webInput)
188188
.doOnNext((output) -> output.getResponseHeaders().add("X-Custom-Header", "42"));
189189
}

spring-boot-project/spring-boot-test-autoconfigure/src/main/java/org/springframework/boot/test/autoconfigure/graphql/tester/GraphQlTesterAutoConfiguration.java

+3-3
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
2525
import org.springframework.boot.autoconfigure.graphql.GraphQlAutoConfiguration;
2626
import org.springframework.context.annotation.Bean;
27-
import org.springframework.graphql.GraphQlService;
27+
import org.springframework.graphql.ExecutionGraphQlService;
2828
import org.springframework.graphql.test.tester.GraphQlServiceTester;
2929
import org.springframework.graphql.test.tester.GraphQlTester;
3030

@@ -39,9 +39,9 @@
3939
public class GraphQlTesterAutoConfiguration {
4040

4141
@Bean
42-
@ConditionalOnBean(GraphQlService.class)
42+
@ConditionalOnBean(ExecutionGraphQlService.class)
4343
@ConditionalOnMissingBean
44-
public GraphQlServiceTester graphQlTester(GraphQlService graphQlService) {
44+
public GraphQlServiceTester graphQlTester(ExecutionGraphQlService graphQlService) {
4545
return GraphQlServiceTester.create(graphQlService);
4646
}
4747

spring-boot-project/spring-boot-test-autoconfigure/src/test/java/org/springframework/boot/test/autoconfigure/graphql/GraphQlTypeExcludeFilterTests.java

+5-6
Original file line numberDiff line numberDiff line change
@@ -47,10 +47,9 @@
4747
import org.springframework.graphql.execution.DataFetcherExceptionResolver;
4848
import org.springframework.graphql.execution.GraphQlSource.Builder;
4949
import org.springframework.graphql.execution.RuntimeWiringConfigurer;
50-
import org.springframework.graphql.web.WebInput;
51-
import org.springframework.graphql.web.WebInterceptor;
52-
import org.springframework.graphql.web.WebInterceptorChain;
53-
import org.springframework.graphql.web.WebOutput;
50+
import org.springframework.graphql.web.WebGraphQlHandlerInterceptor;
51+
import org.springframework.graphql.web.WebGraphQlRequest;
52+
import org.springframework.graphql.web.WebGraphQlResponse;
5453
import org.springframework.stereotype.Controller;
5554
import org.springframework.stereotype.Repository;
5655
import org.springframework.stereotype.Service;
@@ -200,10 +199,10 @@ public void configure(RuntimeWiring.Builder builder) {
200199

201200
}
202201

203-
static class ExampleWebInterceptor implements WebInterceptor {
202+
static class ExampleWebInterceptor implements WebGraphQlHandlerInterceptor {
204203

205204
@Override
206-
public Mono<WebOutput> intercept(WebInput webInput, WebInterceptorChain chain) {
205+
public Mono<WebGraphQlResponse> intercept(WebGraphQlRequest request, Chain chain) {
207206
return null;
208207
}
209208

spring-boot-project/spring-boot-test-autoconfigure/src/test/java/org/springframework/boot/test/autoconfigure/graphql/tester/GraphQlTesterAutoConfigurationTests.java

+3-3
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
import org.springframework.boot.test.context.runner.ApplicationContextRunner;
2323
import org.springframework.context.annotation.Bean;
2424
import org.springframework.context.annotation.Configuration;
25-
import org.springframework.graphql.GraphQlService;
25+
import org.springframework.graphql.ExecutionGraphQlService;
2626
import org.springframework.graphql.test.tester.GraphQlTester;
2727

2828
import static org.assertj.core.api.Assertions.assertThat;
@@ -53,8 +53,8 @@ void shouldContributeTester() {
5353
static class CustomGraphQlServiceConfiguration {
5454

5555
@Bean
56-
GraphQlService graphQlService() {
57-
return mock(GraphQlService.class);
56+
ExecutionGraphQlService graphQlService() {
57+
return mock(ExecutionGraphQlService.class);
5858
}
5959

6060
}

0 commit comments

Comments
 (0)