@PublicApi public class GraphQLInterfaceType extends java.lang.Object implements GraphQLType, GraphQLOutputType, GraphQLFieldsContainer, GraphQLCompositeType, GraphQLUnmodifiedType, GraphQLNullableType, GraphQLDirectiveContainer
TypeResolver is used to take an interface object value and decide what GraphQLObjectType
represents this interface type.
See http://graphql.org/learn/schema/#interfaces for more details on the concept.| Modifier and Type | Class and Description |
|---|---|
static class |
GraphQLInterfaceType.Builder |
| Constructor and Description |
|---|
GraphQLInterfaceType(java.lang.String name,
java.lang.String description,
java.util.List<GraphQLFieldDefinition> fieldDefinitions,
TypeResolver typeResolver) |
GraphQLInterfaceType(java.lang.String name,
java.lang.String description,
java.util.List<GraphQLFieldDefinition> fieldDefinitions,
TypeResolver typeResolver,
java.util.List<GraphQLDirective> directives,
InterfaceTypeDefinition definition) |
| Modifier and Type | Method and Description |
|---|---|
TraversalControl |
accept(TraverserContext<GraphQLType> context,
GraphQLTypeVisitor visitor)
Double-dispatch entry point.
|
java.util.List<GraphQLType> |
getChildren() |
InterfaceTypeDefinition |
getDefinition() |
java.lang.String |
getDescription() |
java.util.List<GraphQLDirective> |
getDirectives() |
GraphQLFieldDefinition |
getFieldDefinition(java.lang.String name) |
java.util.List<GraphQLFieldDefinition> |
getFieldDefinitions() |
java.lang.String |
getName() |
TypeResolver |
getTypeResolver() |
static GraphQLInterfaceType.Builder |
newInterface() |
static GraphQLInterfaceType.Builder |
newInterface(GraphQLInterfaceType existing) |
java.lang.String |
toString() |
GraphQLInterfaceType |
transform(java.util.function.Consumer<GraphQLInterfaceType.Builder> builderConsumer)
This helps you transform the current GraphQLInterfaceType into another one by starting a builder with all
the current values and allows you to transform it how you want.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitgetDirective, getDirectivesByNamepublic GraphQLInterfaceType(java.lang.String name,
java.lang.String description,
java.util.List<GraphQLFieldDefinition> fieldDefinitions,
TypeResolver typeResolver)
public GraphQLInterfaceType(java.lang.String name,
java.lang.String description,
java.util.List<GraphQLFieldDefinition> fieldDefinitions,
TypeResolver typeResolver,
java.util.List<GraphQLDirective> directives,
InterfaceTypeDefinition definition)
public GraphQLFieldDefinition getFieldDefinition(java.lang.String name)
getFieldDefinition in interface GraphQLFieldsContainerpublic java.util.List<GraphQLFieldDefinition> getFieldDefinitions()
getFieldDefinitions in interface GraphQLFieldsContainerpublic java.lang.String getName()
getName in interface GraphQLType[_A-Za-z][_0-9A-Za-z]*public java.lang.String getDescription()
public TypeResolver getTypeResolver()
public InterfaceTypeDefinition getDefinition()
public java.util.List<GraphQLDirective> getDirectives()
getDirectives in interface GraphQLDirectiveContainerpublic java.lang.String toString()
toString in class java.lang.Objectpublic GraphQLInterfaceType transform(java.util.function.Consumer<GraphQLInterfaceType.Builder> builderConsumer)
builderConsumer - the consumer code that will be given a builder to transformpublic TraversalControl accept(TraverserContext<GraphQLType> context, GraphQLTypeVisitor visitor)
GraphQLTypeNode, see accept(...) for more details about the pattern.accept in interface GraphQLTypecontext - TraverserContext bound to this graphQL type objectvisitor - Visitor instance that performs actual processing on the types(s)public java.util.List<GraphQLType> getChildren()
getChildren in interface GraphQLTypepublic static GraphQLInterfaceType.Builder newInterface()
public static GraphQLInterfaceType.Builder newInterface(GraphQLInterfaceType existing)