E5F5 Removed deprecated methods and SchemaGeneratorPostProcessing by bbakerman · Pull Request #3516 · graphql-java/graphql-java · GitHub
[go: up one dir, main page]

Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 0 additions & 22 deletions src/main/java/graphql/schema/idl/RuntimeWiring.java
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,6 @@ public class RuntimeWiring {
private final List<SchemaDirectiveWiring> directiveWiring;
private final WiringFactory wiringFactory;
private final Map<String, EnumValuesProvider> enumValuesProviders;
private final Collection<SchemaGeneratorPostProcessing> schemaGeneratorPostProcessings;
private final GraphqlFieldVisibility fieldVisibility;
private final GraphQLCodeRegistry codeRegistry;
private final GraphqlTypeComparatorRegistry comparatorRegistry;
Expand All @@ -57,7 +56,6 @@ private RuntimeWiring(Builder builder) {
this.directiveWiring = builder.directiveWiring;
this.wiringFactory = builder.wiringFactory;
this.enumValuesProviders = builder.enumValuesProviders;
this.schemaGeneratorPostProcessings = builder.schemaGeneratorPostProcessings;
this.fieldVisibility = builder.fieldVisibility;
this.codeRegistry = builder.codeRegistry;
this.comparatorRegistry = builder.comparatorRegistry;
Expand Down Expand Up @@ -85,7 +83,6 @@ public static Builder newRuntimeWiring(RuntimeWiring originalRuntimeWiring) {
builder.directiveWiring.addAll(originalRuntimeWiring.directiveWiring);
builder.wiringFactory = originalRuntimeWiring.wiringFactory;
builder.enumValuesProviders.putAll(originalRuntimeWiring.enumValuesProviders);
builder.schemaGeneratorPostProcessings.addAll(originalRuntimeWiring.schemaGeneratorPostProcessings);
builder.fieldVisibility = originalRuntimeWiring.fieldVisibility;
builder.codeRegistry = originalRuntimeWiring.codeRegistry;
builder.comparatorRegistry = originalRuntimeWiring.comparatorRegistry;
Expand Down Expand Up @@ -150,10 +147,6 @@ public List<SchemaDirectiveWiring> getDirectiveWiring() {
return directiveWiring;
}

public Collection<SchemaGeneratorPostProcessing> getSchemaGeneratorPostProcessings() {
return schemaGeneratorPostProcessings;
}

public GraphqlTypeComparatorRegistry getComparatorRegistry() {
return comparatorRegistry;
}
Expand All @@ -167,7 +160,6 @@ public static class Builder {
private final Map<String, EnumValuesProvider> enumValuesProviders = new LinkedHashMap<>();
private final Map<String, SchemaDirectiveWiring> registeredDirectiveWiring = new LinkedHashMap<>();
private final List<SchemaDirectiveWiring> directiveWiring = new ArrayList<>();
private final Collection<SchemaGeneratorPostProcessing> schemaGeneratorPostProcessings = new ArrayList<>();
private WiringFactory wiringFactory = new NoopWiringFactory();
private GraphqlFieldVisibility fieldVisibility = DEFAULT_FIELD_VISIBILITY;
private GraphQLCodeRegistry codeRegistry = GraphQLCodeRegistry.newCodeRegistry().build();
Expand Down Expand Up @@ -346,20 +338,6 @@ public Builder comparatorRegistry(GraphqlTypeComparatorRegistry comparatorRegist
return this;
}

/**
* Adds a schema transformer into the mix
*
* @param schemaGeneratorPostProcessing the non null schema transformer to add
*
* @return the runtime wiring builder
* @deprecated This mechanism can be achieved in a better way via {@link graphql.schema.SchemaTransformer}
* after the schema is built
*/
@Deprecated(since = "2022-10-29")
public Builder transformer(SchemaGeneratorPostProcessing schemaGeneratorPostProcessing) {
this.schemaGeneratorPostProcessings.add(assertNotNull(schemaGeneratorPostProcessing));
return this;
}

/**
* @return the built runtime wiring
Expand Down
7 changes: 0 additions & 7 deletions src/main/java/graphql/schema/idl/SchemaGenerator.java
Original file line number Diff line number Diff line change
Expand Up @@ -154,13 +154,6 @@ private GraphQLSchema makeExecutableSchemaImpl(TypeDefinitionRegistry typeRegist
buildCtx.getCodeRegistry());
graphQLSchema = directiveWiringProcessing.process(graphQLSchema);
}

//
// SchemaGeneratorPostProcessing is deprecated but for now we continue to run them
//
for (SchemaGeneratorPostProcessing postProcessing : buildCtx.getWiring().getSchemaGeneratorPostProcessings()) {
graphQLSchema = postProcessing.process(graphQLSchema);
}
return graphQLSchema;
}

Expand Down

This file was deleted.

26 changes: 0 additions & 26 deletions src/test/groovy/graphql/schema/idl/SchemaGeneratorTest.groovy
Original file line number Diff line number Diff line change
Expand Up @@ -1820,32 +1820,6 @@ class SchemaGeneratorTest extends Specification {
assert schema != null
}

def "transformers get called once the schema is built"() {
def spec = """
type Query {
hello: String
}
"""

def types = new SchemaParser().parse(spec)

def extraDirective = (GraphQLDirective.newDirective()).name("extra")
.argument(GraphQLArgument.newArgument().name("value").type(GraphQLString)).build()
def transformer = new SchemaGeneratorPostProcessing() { // Retained to show deprecated code is still run
@Override
GraphQLSchema process(GraphQLSchema originalSchema) {
originalSchema.transform({ builder -> builder.additionalDirective(extraDirective) })
}
}
def wiring = RuntimeWiring.newRuntimeWiring()
.transformer(transformer) // Retained to show deprecated code is still run
.build()
GraphQLSchema schema = new SchemaGenerator().makeExecutableSchema(types, wiring)
expect:
assert schema != null
schema.getDirective("extra") != null
}

def "enum object default values are handled"() {
def spec = '''
enum EnumValue {
Expand Down
0