Package graphql.schema
Class GraphQLEnumType
java.lang.Object
graphql.schema.GraphQLEnumType
- All Implemented Interfaces:
GraphQLDirectiveContainer,GraphQLInputSchemaElement,GraphQLInputType,GraphQLNamedInputType,GraphQLNamedOutputType,GraphQLNamedSchemaElement,GraphQLNamedType,GraphQLNullableType,GraphQLOutputType,GraphQLSchemaElement,GraphQLType,GraphQLUnmodifiedType
@PublicApi
public class GraphQLEnumType
extends Object
implements GraphQLNamedInputType, GraphQLNamedOutputType, GraphQLUnmodifiedType, GraphQLNullableType, GraphQLDirectiveContainer
A graphql enumeration type has a limited set of values.
This allows you to validate that any arguments of this type are one of the allowed values and communicate through the type system that a field will always be one of a finite set of values.
See https://graphql.org/learn/schema/#enumeration-types for more details
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsFields inherited from interface graphql.schema.GraphQLDirectiveContainer
CHILD_APPLIED_DIRECTIVES, CHILD_DIRECTIVES -
Method Summary
Modifier and TypeMethodDescriptionaccept(TraverserContext<GraphQLSchemaElement> context, GraphQLTypeVisitor visitor) copy()Each GraphQLSchemaElement should make a copy of itself when this is called.final booleanNo GraphQLSchemaElement implements `equals` because we need object identity to treat a GraphQLSchema as an abstract graph.This will return a Map of the all directives that are associated with aGraphQLNamedSchemaElement, including both repeatable and non-repeatable directives.This will return a Map of the all directives that are associated with aGraphQLNamedSchemaElement, including both repeatable and non repeatable directives.getAppliedDirective(String directiveName) Returns a non-repeatable directive with the provided name.This will return a list of all the directives that have been put onGraphQLNamedSchemaElementas a flat list, which may contain repeatable and non-repeatable directives.The ASTNodethis schema element is based on.getDirective(String directiveName) Returns a non-repeatable directive with the provided name.This will return a list of all the directives that have been put onGraphQLNamedSchemaElementas a flat list, which may contain repeatable and non-repeatable directives.This will return a Map of the non repeatable directives that are associated with aGraphQLNamedSchemaElement.getName()final inthashCode()No GraphQLSchemaElement implements `equals/hashCode` because we need object identity to treat a GraphQLSchema as an abstract graph.static GraphQLEnumType.BuildernewEnum()static GraphQLEnumType.BuildernewEnum(GraphQLEnumType existing) parseLiteral(Value<?> input, GraphQLContext graphQLContext, Locale locale) parseLiteral(Object input) Deprecated.parseValue(Object input) Deprecated.parseValue(Object input, GraphQLContext graphQLContext, Locale locale) Deprecated.serialize(Object input, GraphQLContext graphQLContext, Locale locale) toString()transform(Consumer<GraphQLEnumType.Builder> builderConsumer) This helps you transform the current GraphQLEnumType into another one by starting a builder with all the current values and allows you to transform it how you want.valueToLiteral(Object input) Deprecated.Value<?> valueToLiteral(Object input, GraphQLContext graphQLContext, Locale locale) withNewChildren(SchemaElementChildrenContainer newChildren) Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface graphql.schema.GraphQLDirectiveContainer
getAppliedDirectives, getDirectives, hasAppliedDirective, hasDirective
-
Field Details
-
CHILD_VALUES
- See Also:
-
-
Method Details
-
serialize
Deprecated. -
serialize
-
parseValue
Deprecated. -
parseValue
-
parseLiteral
Deprecated. -
parseLiteral
-
valueToLiteral
Deprecated. -
valueToLiteral
-
getValues
-
getValue
-
getName
- Specified by:
getNamein interfaceGraphQLNamedSchemaElement- Returns:
- the name of this element. This cant be null
-
getDescription
- Specified by:
getDescriptionin interfaceGraphQLNamedSchemaElement- Returns:
- the description of this element. This can be null
-
getDefinition
Description copied from interface:GraphQLNamedSchemaElementThe ASTNodethis schema element is based on. Is null if the GraphQLSchema is not based on a SDL document. Some elements also have additional extension Nodes. See for exampleGraphQLObjectType.getExtensionDefinitions()- Specified by:
getDefinitionin interfaceGraphQLNamedSchemaElement- Returns:
- Node which this element is based on. Can be null.
-
getExtensionDefinitions
-
getDirectives
Description copied from interface:GraphQLDirectiveContainerThis will return a list of all the directives that have been put onGraphQLNamedSchemaElementas a flat list, which may contain repeatable and non-repeatable directives.- Specified by:
getDirectivesin interfaceGraphQLDirectiveContainer- Returns:
- a list of all the directives associated with this named schema element
-
getDirectivesByName
Description copied from interface:GraphQLDirectiveContainerThis will return a Map of the non repeatable directives that are associated with aGraphQLNamedSchemaElement. Any repeatable directives will be filtered out of this map.- Specified by:
getDirectivesByNamein interfaceGraphQLDirectiveContainer- Returns:
- a map of non repeatable directives by directive name.
-
getAllDirectivesByName
Description copied from interface:GraphQLDirectiveContainerThis will return a Map of the all directives that are associated with aGraphQLNamedSchemaElement, including both repeatable and non repeatable directives.- Specified by:
getAllDirectivesByNamein interfaceGraphQLDirectiveContainer- Returns:
- a map of all directives by directive name
-
getDirective
Description copied from interface:GraphQLDirectiveContainerReturns a non-repeatable directive with the provided name. This will throw aAssertExceptionif the directive is a repeatable directive that has more then one instance.- Specified by:
getDirectivein interfaceGraphQLDirectiveContainer- Parameters:
directiveName- the name of the directive to retrieve- Returns:
- the directive or null if there is not one with that name
-
getAppliedDirectives
Description copied from interface:GraphQLDirectiveContainerThis will return a list of all the directives that have been put onGraphQLNamedSchemaElementas a flat list, which may contain repeatable and non-repeatable directives.- Specified by:
getAppliedDirectivesin interfaceGraphQLDirectiveContainer- Returns:
- a list of all the directives associated with this named schema element
-
getAllAppliedDirectivesByName
Description copied from interface:GraphQLDirectiveContainerThis will return a Map of the all directives that are associated with aGraphQLNamedSchemaElement, including both repeatable and non-repeatable directives.- Specified by:
getAllAppliedDirectivesByNamein interfaceGraphQLDirectiveContainer- Returns:
- a map of all directives by directive name
-
getAppliedDirective
Description copied from interface:GraphQLDirectiveContainerReturns a non-repeatable directive with the provided name.- Specified by:
getAppliedDirectivein interfaceGraphQLDirectiveContainer- Parameters:
directiveName- the name of the directive to retrieve- Returns:
- the directive or null if there is not one with that name
-
transform
This helps you transform the current GraphQLEnumType into another one by starting a builder with all the current values and allows you to transform it how you want.- Parameters:
builderConsumer- the consumer code that will be given a builder to transform- Returns:
- a new field based on calling build on that builder
-
copy
Description copied from interface:GraphQLSchemaElementEach GraphQLSchemaElement should make a copy of itself when this is called. The copy should be included its current contents as they currently exist into a new object.- Specified by:
copyin interfaceGraphQLSchemaElement- Returns:
- a copy of this element
-
accept
public TraversalControl accept(TraverserContext<GraphQLSchemaElement> context, GraphQLTypeVisitor visitor) - Specified by:
acceptin interfaceGraphQLSchemaElement
-
getChildren
- Specified by:
getChildrenin interfaceGraphQLSchemaElement
-
getChildrenWithTypeReferences
- Specified by:
getChildrenWithTypeReferencesin interfaceGraphQLSchemaElement
-
withNewChildren
- Specified by:
withNewChildrenin interfaceGraphQLSchemaElement
-
equals
No GraphQLSchemaElement implements `equals` because we need object identity to treat a GraphQLSchema as an abstract graph.- Specified by:
equalsin interfaceGraphQLSchemaElement- Overrides:
equalsin classObject- Parameters:
o- the reference object with which to compare.- Returns:
trueif this object is the same as the obj argument;falseotherwise.
-
hashCode
public final int hashCode()No GraphQLSchemaElement implements `equals/hashCode` because we need object identity to treat a GraphQLSchema as an abstract graph.- Specified by:
hashCodein interfaceGraphQLSchemaElement- Overrides:
hashCodein classObject- Returns:
- a hash code value for this object.
-
toString
-
newEnum
-
newEnum
-