@PublicApi public class GraphQLInputObjectField extends java.lang.Object implements GraphQLNamedSchemaElement, GraphQLInputValueDefinition
GraphQLInputObjectType
contains these input fields.
There are similar to GraphQLFieldDefinition
however they can ONLY be used on input objects, that
is to describe values that are fed into a graphql mutation.
See http://graphql.org/learn/schema/#input-types for more details on the concept.Modifier and Type | Class and Description |
---|---|
static class |
GraphQLInputObjectField.Builder |
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
CHILD_DIRECTIVES |
static java.lang.String |
CHILD_TYPE |
Constructor and Description |
---|
GraphQLInputObjectField(java.lang.String name,
GraphQLInputType type)
Deprecated.
use the
newInputObjectField() builder pattern instead, as this constructor will be made private in a future version. |
GraphQLInputObjectField(java.lang.String name,
java.lang.String description,
GraphQLInputType type,
java.lang.Object defaultValue)
Deprecated.
use the
newInputObjectField() builder pattern instead, as this constructor will be made private in a future version. |
GraphQLInputObjectField(java.lang.String name,
java.lang.String description,
GraphQLInputType type,
java.lang.Object defaultValue,
java.util.List<GraphQLDirective> directives,
InputValueDefinition definition)
Deprecated.
use the
newInputObjectField() builder pattern instead, as this constructor will be made private in a future version. |
Modifier and Type | Method and Description |
---|---|
TraversalControl |
accept(TraverserContext<GraphQLSchemaElement> context,
GraphQLTypeVisitor visitor) |
boolean |
equals(java.lang.Object o)
No GraphQLSchemaElement implements `equals` because we need object identity
to treat a GraphQLSchema as an abstract graph.
|
java.util.List<GraphQLSchemaElement> |
getChildren() |
SchemaElementChildrenContainer |
getChildrenWithTypeReferences() |
java.lang.Object |
getDefaultValue() |
InputValueDefinition |
getDefinition()
The AST
Node this schema element is based on. |
java.lang.String |
getDescription() |
java.util.List<GraphQLDirective> |
getDirectives() |
java.lang.String |
getName() |
GraphQLInputType |
getType() |
int |
hashCode()
No GraphQLSchemaElement implements `equals/hashCode` because we need object identity
to treat a GraphQLSchema as an abstract graph.
|
static GraphQLInputObjectField.Builder |
newInputObjectField() |
static GraphQLInputObjectField.Builder |
newInputObjectField(GraphQLInputObjectField existing) |
java.lang.String |
toString() |
GraphQLInputObjectField |
transform(java.util.function.Consumer<GraphQLInputObjectField.Builder> builderConsumer)
This helps you transform the current GraphQLInputObjectField into another one by starting a builder with all
the current values and allows you to transform it how you want.
|
GraphQLInputObjectField |
withNewChildren(SchemaElementChildrenContainer newChildren) |
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
getDirective, getDirectivesByName
public static final java.lang.String CHILD_TYPE
public static final java.lang.String CHILD_DIRECTIVES
@Deprecated public GraphQLInputObjectField(java.lang.String name, GraphQLInputType type)
newInputObjectField()
builder pattern instead, as this constructor will be made private in a future version.name
- the nametype
- the field type@Deprecated public GraphQLInputObjectField(java.lang.String name, java.lang.String description, GraphQLInputType type, java.lang.Object defaultValue)
newInputObjectField()
builder pattern instead, as this constructor will be made private in a future version.name
- the namedescription
- the descriptiontype
- the field typedefaultValue
- the default value@Deprecated public GraphQLInputObjectField(java.lang.String name, java.lang.String description, GraphQLInputType type, java.lang.Object defaultValue, java.util.List<GraphQLDirective> directives, InputValueDefinition definition)
newInputObjectField()
builder pattern instead, as this constructor will be made private in a future version.name
- the namedescription
- the descriptiontype
- the field typedefaultValue
- the default valuedirectives
- the directives on this type elementdefinition
- the AST definitionpublic java.lang.String getName()
getName
in interface GraphQLNamedSchemaElement
public GraphQLInputType getType()
getType
in interface GraphQLInputValueDefinition
public java.lang.Object getDefaultValue()
public java.lang.String getDescription()
getDescription
in interface GraphQLNamedSchemaElement
public InputValueDefinition getDefinition()
GraphQLNamedSchemaElement
Node
this 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 example GraphQLObjectType.getExtensionDefinitions()
getDefinition
in interface GraphQLNamedSchemaElement
public java.util.List<GraphQLDirective> getDirectives()
getDirectives
in interface GraphQLDirectiveContainer
public GraphQLInputObjectField transform(java.util.function.Consumer<GraphQLInputObjectField.Builder> builderConsumer)
builderConsumer
- the consumer code that will be given a builder to transformpublic TraversalControl accept(TraverserContext<GraphQLSchemaElement> context, GraphQLTypeVisitor visitor)
accept
in interface GraphQLSchemaElement
public java.util.List<GraphQLSchemaElement> getChildren()
getChildren
in interface GraphQLSchemaElement
public SchemaElementChildrenContainer getChildrenWithTypeReferences()
getChildrenWithTypeReferences
in interface GraphQLSchemaElement
public GraphQLInputObjectField withNewChildren(SchemaElementChildrenContainer newChildren)
withNewChildren
in interface GraphQLSchemaElement
public final boolean equals(java.lang.Object o)
equals
in interface GraphQLSchemaElement
equals
in class java.lang.Object
public final int hashCode()
hashCode
in interface GraphQLSchemaElement
hashCode
in class java.lang.Object
public java.lang.String toString()
toString
in class java.lang.Object
public static GraphQLInputObjectField.Builder newInputObjectField(GraphQLInputObjectField existing)
public static GraphQLInputObjectField.Builder newInputObjectField()