33import graphql .execution .ExecutionStrategy ;
44import graphql .execution .instrumentation .Instrumentation ;
55import graphql .execution .instrumentation .NoOpInstrumentation ;
6+ import graphql .execution .preparsed .NoOpPreparsedDocumentProvider ;
7+ import graphql .execution .preparsed .PreparsedDocumentProvider ;
68import graphql .schema .GraphQLSchema ;
79
810import javax .servlet .http .HttpServletRequest ;
@@ -25,14 +27,14 @@ public SimpleGraphQLServlet(GraphQLSchema schema, ExecutionStrategy executionStr
2527 }
2628
2729 public SimpleGraphQLServlet (GraphQLSchema schema , ExecutionStrategyProvider executionStrategyProvider ) {
28- this (schema , executionStrategyProvider , null , null , null , null , null , null );
30+ this (schema , executionStrategyProvider , null , null , null , null , null , null , null );
2931 }
3032
31- public SimpleGraphQLServlet (final GraphQLSchema schema , ExecutionStrategyProvider executionStrategyProvider , ObjectMapperConfigurer objectMapperConfigurer , List <GraphQLServletListener > listeners , Instrumentation instrumentation , GraphQLErrorHandler errorHandler , GraphQLContextBuilder contextBuilder , GraphQLRootObjectBuilder rootObjectBuilder ) {
32- this (new DefaultGraphQLSchemaProvider (schema ), executionStrategyProvider , objectMapperConfigurer , listeners , instrumentation , errorHandler , contextBuilder , rootObjectBuilder );
33+ public SimpleGraphQLServlet (final GraphQLSchema schema , ExecutionStrategyProvider executionStrategyProvider , ObjectMapperConfigurer objectMapperConfigurer , List <GraphQLServletListener > listeners , Instrumentation instrumentation , GraphQLErrorHandler errorHandler , GraphQLContextBuilder contextBuilder , GraphQLRootObjectBuilder rootObjectBuilder , PreparsedDocumentProvider preparsedDocumentProvider ) {
34+ this (new DefaultGraphQLSchemaProvider (schema ), executionStrategyProvider , objectMapperConfigurer , listeners , instrumentation , errorHandler , contextBuilder , rootObjectBuilder , preparsedDocumentProvider );
3335 }
3436
35- public SimpleGraphQLServlet (GraphQLSchemaProvider schemaProvider , ExecutionStrategyProvider executionStrategyProvider , ObjectMapperConfigurer objectMapperConfigurer , List <GraphQLServletListener > listeners , Instrumentation instrumentation , GraphQLErrorHandler errorHandler , GraphQLContextBuilder contextBuilder , GraphQLRootObjectBuilder rootObjectBuilder ) {
37+ public SimpleGraphQLServlet (GraphQLSchemaProvider schemaProvider , ExecutionStrategyProvider executionStrategyProvider , ObjectMapperConfigurer objectMapperConfigurer , List <GraphQLServletListener > listeners , Instrumentation instrumentation , GraphQLErrorHandler errorHandler , GraphQLContextBuilder contextBuilder , GraphQLRootObjectBuilder rootObjectBuilder , PreparsedDocumentProvider preparsedDocumentProvider ) {
3638 super (objectMapperConfigurer , listeners , null );
3739
3840 this .schemaProvider = schemaProvider ;
@@ -61,6 +63,12 @@ public SimpleGraphQLServlet(GraphQLSchemaProvider schemaProvider, ExecutionStrat
6163 } else {
6264 this .rootObjectBuilder = rootObjectBuilder ;
6365 }
66+
67+ if (preparsedDocumentProvider == null ) {
68+ this .preparsedDocumentProvider = NoOpPreparsedDocumentProvider .INSTANCE ;
69+ } else {
70+ this .preparsedDocumentProvider = preparsedDocumentProvider ;
71+ }
6472 }
6573
6674 private final GraphQLSchemaProvider schemaProvider ;
@@ -69,6 +77,7 @@ public SimpleGraphQLServlet(GraphQLSchemaProvider schemaProvider, ExecutionStrat
6977 private final GraphQLErrorHandler errorHandler ;
7078 private final GraphQLContextBuilder contextBuilder ;
7179 private final GraphQLRootObjectBuilder rootObjectBuilder ;
80+ private final PreparsedDocumentProvider preparsedDocumentProvider ;
7281
7382 @ Override
7483 protected GraphQLSchemaProvider getSchemaProvider () {
@@ -104,4 +113,9 @@ protected Map<String, Object> transformVariables(GraphQLSchema schema, String qu
104113 protected GraphQLErrorHandler getGraphQLErrorHandler () {
105114 return errorHandler ;
106115 }
116+
117+ @ Override
118+ protected PreparsedDocumentProvider getPreparsedDocumentProvider () {
119+ return preparsedDocumentProvider ;
120+ }
107121}
0 commit comments