Class InputAndOutputTypesUsedAppropriately
java.lang.Object
graphql.schema.GraphQLTypeVisitorStub
graphql.schema.validation.InputAndOutputTypesUsedAppropriately
- All Implemented Interfaces:
GraphQLTypeVisitor
Schema validation rule ensuring no input type forms an unbroken non-nullable recursion,
as such a type would be impossible to satisfy
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate voidcheckIsAllInputTypes(GraphQLInputType inputType, SchemaValidationErrorCollector validationErrorCollector, String argName) private voidcheckIsAllOutputTypes(GraphQLOutputType outputType, SchemaValidationErrorCollector validationErrorCollector, String fieldName) private voidcheckTypeContext(GraphQLType type, SchemaValidationErrorCollector validationErrorCollector, String path, Predicate<GraphQLType> typePredicate, BiFunction<String, String, SchemaValidationError> errorMaker) private StringgetTypeName(GraphQLType type) visitGraphQLFieldDefinition(GraphQLFieldDefinition fieldDef, TraverserContext<GraphQLSchemaElement> context) visitGraphQLInputObjectField(GraphQLInputObjectField fieldDef, TraverserContext<GraphQLSchemaElement> context) Methods inherited from class GraphQLTypeVisitorStub
visitGraphQLAppliedDirective, visitGraphQLAppliedDirectiveArgument, visitGraphQLArgument, visitGraphQLDirective, visitGraphQLEnumType, visitGraphQLEnumValueDefinition, visitGraphQLInputObjectType, visitGraphQLInterfaceType, visitGraphQLList, visitGraphQLNonNull, visitGraphQLObjectType, visitGraphQLScalarType, visitGraphQLType, visitGraphQLTypeReference, visitGraphQLUnionTypeMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface GraphQLTypeVisitor
changeNode, deleteNode, insertAfter, insertBefore, visitBackRef, visitGraphQLCompositeType, visitGraphQLDirectiveContainer, visitGraphQLFieldsContainer, visitGraphQLInputFieldsContainer, visitGraphQLInputType, visitGraphQLModifiedType, visitGraphQLNullableType, visitGraphQLOutputType, visitGraphQLUnmodifiedType
-
Constructor Details
-
InputAndOutputTypesUsedAppropriately
public InputAndOutputTypesUsedAppropriately()
-
-
Method Details
-
visitGraphQLFieldDefinition
public TraversalControl visitGraphQLFieldDefinition(GraphQLFieldDefinition fieldDef, TraverserContext<GraphQLSchemaElement> context) - Specified by:
visitGraphQLFieldDefinitionin interfaceGraphQLTypeVisitor- Overrides:
visitGraphQLFieldDefinitionin classGraphQLTypeVisitorStub
-
visitGraphQLInputObjectField
public TraversalControl visitGraphQLInputObjectField(GraphQLInputObjectField fieldDef, TraverserContext<GraphQLSchemaElement> context) - Specified by:
visitGraphQLInputObjectFieldin interfaceGraphQLTypeVisitor- Overrides:
visitGraphQLInputObjectFieldin classGraphQLTypeVisitorStub
-
checkIsAllInputTypes
private void checkIsAllInputTypes(GraphQLInputType inputType, SchemaValidationErrorCollector validationErrorCollector, String argName) -
checkIsAllOutputTypes
private void checkIsAllOutputTypes(GraphQLOutputType outputType, SchemaValidationErrorCollector validationErrorCollector, String fieldName) -
checkTypeContext
private void checkTypeContext(GraphQLType type, SchemaValidationErrorCollector validationErrorCollector, String path, Predicate<GraphQLType> typePredicate, BiFunction<String, String, SchemaValidationError> errorMaker) -
getTypeName
-