Package graphql.schema.idl
Class ArgValueOfAllowedTypeChecker
java.lang.Object
graphql.schema.idl.ArgValueOfAllowedTypeChecker
Class to check whether a given directive argument value
matches a given directive definition.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final Argument
private final Directive
private final Node
<?> private final String
private static final org.slf4j.Logger
private final RuntimeWiring
private final TypeDefinitionRegistry
-
Constructor Summary
ConstructorsConstructorDescriptionArgValueOfAllowedTypeChecker
(Directive directive, Node<?> element, String elementName, Argument argument, TypeDefinitionRegistry typeRegistry, RuntimeWiring runtimeWiring) -
Method Summary
Modifier and TypeMethodDescriptionprivate void
addValidationError
(List<GraphQLError> errors, String message, Object... args) private void
checkArgInputObjectValueFieldMatchesAllowedDefinition
(List<GraphQLError> errors, ObjectField objectField, InputValueDefinition allowedValueDef) private void
checkArgValueMatchesAllowedEnum
(List<GraphQLError> errors, Value<?> instanceValue, EnumTypeDefinition allowedTypeDefinition) private void
checkArgValueMatchesAllowedInputType
(List<GraphQLError> errors, Value<?> instanceValue, InputObjectTypeDefinition allowedTypeDefinition) private void
checkArgValueMatchesAllowedListType
(List<GraphQLError> errors, Value<?> instanceValue, ListType allowedArgType) private void
checkArgValueMatchesAllowedNonNullType
(List<GraphQLError> errors, Value<?> instanceValue, NonNullType allowedArgType) private void
checkArgValueMatchesAllowedScalar
(List<GraphQLError> errors, Value<?> instanceValue, ScalarTypeDefinition allowedTypeDefinition) (package private) void
checkArgValueMatchesAllowedType
(List<GraphQLError> errors, Value<?> instanceValue, Type<?> allowedArgType) Recursively inspects an argument value given an allowed type.private void
checkArgValueMatchesAllowedTypeName
(List<GraphQLError> errors, Value<?> instanceValue, Type<?> allowedArgType) private boolean
isArgumentValueScalarLiteral
(GraphQLScalarType scalarType, Value<?> instanceValue)
-
Field Details
-
logNotSafe
private static final org.slf4j.Logger logNotSafe -
directive
-
element
-
elementName
-
argument
-
typeRegistry
-
runtimeWiring
-
-
Constructor Details
-
ArgValueOfAllowedTypeChecker
ArgValueOfAllowedTypeChecker(Directive directive, Node<?> element, String elementName, Argument argument, TypeDefinitionRegistry typeRegistry, RuntimeWiring runtimeWiring)
-
-
Method Details
-
checkArgValueMatchesAllowedType
void checkArgValueMatchesAllowedType(List<GraphQLError> errors, Value<?> instanceValue, Type<?> allowedArgType) Recursively inspects an argument value given an allowed type. Given the (invalid) SDL below:directive @myDirective(arg: [[String]] ) on FIELD_DEFINITION
query { f: String @myDirective(arg: ["A String"]) }
it will first check that the `myDirective.arg` type is an array and fail when finding "A String" as it expected a nested array ([[String]]).
- Parameters:
errors
- validation error collectorinstanceValue
- directive argument valueallowedArgType
- directive definition argument allowed type
-
addValidationError
-
checkArgValueMatchesAllowedTypeName
private void checkArgValueMatchesAllowedTypeName(List<GraphQLError> errors, Value<?> instanceValue, Type<?> allowedArgType) -
checkArgValueMatchesAllowedInputType
private void checkArgValueMatchesAllowedInputType(List<GraphQLError> errors, Value<?> instanceValue, InputObjectTypeDefinition allowedTypeDefinition) -
checkArgValueMatchesAllowedEnum
private void checkArgValueMatchesAllowedEnum(List<GraphQLError> errors, Value<?> instanceValue, EnumTypeDefinition allowedTypeDefinition) -
checkArgValueMatchesAllowedScalar
private void checkArgValueMatchesAllowedScalar(List<GraphQLError> errors, Value<?> instanceValue, ScalarTypeDefinition allowedTypeDefinition) -
checkArgInputObjectValueFieldMatchesAllowedDefinition
private void checkArgInputObjectValueFieldMatchesAllowedDefinition(List<GraphQLError> errors, ObjectField objectField, InputValueDefinition allowedValueDef) -
checkArgValueMatchesAllowedNonNullType
private void checkArgValueMatchesAllowedNonNullType(List<GraphQLError> errors, Value<?> instanceValue, NonNullType allowedArgType) -
checkArgValueMatchesAllowedListType
private void checkArgValueMatchesAllowedListType(List<GraphQLError> errors, Value<?> instanceValue, ListType allowedArgType) -
isArgumentValueScalarLiteral
-