Skip to content

Commit

Permalink
Auto-configure GraphQL subscription exception handling
Browse files Browse the repository at this point in the history
Closes gh-31794
  • Loading branch information
bclozel committed Jul 19, 2022
1 parent a6f6582 commit 7c7a32a
Showing 1 changed file with 3 additions and 0 deletions.
Expand Up @@ -50,6 +50,7 @@
import org.springframework.graphql.execution.DefaultExecutionGraphQlService;
import org.springframework.graphql.execution.GraphQlSource;
import org.springframework.graphql.execution.RuntimeWiringConfigurer;
import org.springframework.graphql.execution.SubscriptionExceptionResolver;

/**
* {@link EnableAutoConfiguration Auto-configuration} for creating a Spring GraphQL base
Expand All @@ -76,13 +77,15 @@ public GraphQlAutoConfiguration(ListableBeanFactory beanFactory) {
@ConditionalOnMissingBean
public GraphQlSource graphQlSource(ResourcePatternResolver resourcePatternResolver, GraphQlProperties properties,
ObjectProvider<DataFetcherExceptionResolver> exceptionResolvers,
ObjectProvider<SubscriptionExceptionResolver> subscriptionExceptionResolvers,
ObjectProvider<Instrumentation> instrumentations, ObjectProvider<RuntimeWiringConfigurer> wiringConfigurers,
ObjectProvider<GraphQlSourceBuilderCustomizer> sourceCustomizers) {
String[] schemaLocations = properties.getSchema().getLocations();
Resource[] schemaResources = resolveSchemaResources(resourcePatternResolver, schemaLocations,
properties.getSchema().getFileExtensions());
GraphQlSource.SchemaResourceBuilder builder = GraphQlSource.schemaResourceBuilder()
.schemaResources(schemaResources).exceptionResolvers(toList(exceptionResolvers))
.subscriptionExceptionResolvers(toList(subscriptionExceptionResolvers))
.instrumentation(toList(instrumentations));
if (!properties.getSchema().getIntrospection().isEnabled()) {
builder.configureRuntimeWiring(this::enableIntrospection);
Expand Down

0 comments on commit 7c7a32a

Please sign in to comment.