-
- All Implemented Interfaces:
public abstract class AugmentationHandlerA base class for augmenting a TypeDefinitionRegistry. There a re 2 steps in augmenting the types:
augmenting the type by creating the relevant query / mutation fields and adding filtering and sorting to the relation fields
generating a data fetcher based on a field definition. The field may be an augmented field (from step 1) but can also be a user specified query / mutation field
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description public enumAugmentationHandler.OperationType
-
Field Summary
Fields Modifier and Type Field Description private final SchemaConfigschemaConfigprivate final TypeDefinitionRegistrytypeDefinitionRegistryprivate final TypeDefinitionRegistryneo4jTypeDefinitionRegistry
-
Constructor Summary
Constructors Constructor Description AugmentationHandler(SchemaConfig schemaConfig, TypeDefinitionRegistry typeDefinitionRegistry, TypeDefinitionRegistry neo4jTypeDefinitionRegistry)
-
Method Summary
Modifier and Type Method Description final SchemaConfiggetSchemaConfig()final TypeDefinitionRegistrygetTypeDefinitionRegistry()final TypeDefinitionRegistrygetNeo4jTypeDefinitionRegistry()UnitaugmentType(ImplementingTypeDefinition<?> type)The 1st step in enhancing a schema. abstract DataFetcher<Cypher>createDataFetcher(AugmentationHandler.OperationType operationType, FieldDefinition fieldDefinition)The 2nd step is creating a data fetcher based on a field definition. final RelationshipInfo<ImplementingTypeDefinition<?>>relationship(ImplementingTypeDefinition<?> $self)final List<FieldDefinition>getScalarFields(ImplementingTypeDefinition<?> $self)final <Error class: unknown class>getFieldDefinition(ImplementingTypeDefinition<?> $self, String name)final <Error class: unknown class>getIdField(ImplementingTypeDefinition<?> $self)final TypeDefinition<?>resolve(Type<?> $self)final BooleanisScalar(Type<?> $self)final BooleanisEnum(Type<?> $self)final BooleanisID(Type<?> $self)final BooleanisNativeId(FieldDefinition $self)final StringdynamicPrefix(FieldDefinition $self)final BooleanisRelationship(FieldDefinition $self)final TypeDefinition<TypeDefinition<?>>getUnwrappedType(TypeDefinitionRegistry $self, String name)final CypherDirectivecypherDirective(DirectivesContainer<?> $self)final <T extends Any> TgetDirectiveArgument(DirectivesContainer<?> $self, String directiveName, String argumentName, T defaultValue)final InputValueDefinitioninput(String name, Type<?> type, String description)-
-
Constructor Detail
-
AugmentationHandler
AugmentationHandler(SchemaConfig schemaConfig, TypeDefinitionRegistry typeDefinitionRegistry, TypeDefinitionRegistry neo4jTypeDefinitionRegistry)
-
-
Method Detail
-
getSchemaConfig
final SchemaConfig getSchemaConfig()
-
getTypeDefinitionRegistry
final TypeDefinitionRegistry getTypeDefinitionRegistry()
-
getNeo4jTypeDefinitionRegistry
final TypeDefinitionRegistry getNeo4jTypeDefinitionRegistry()
-
augmentType
Unit augmentType(ImplementingTypeDefinition<?> type)
The 1st step in enhancing a schema. This method creates relevant query / mutation fields and / or adds filtering and sorting to the relation fields of the given type
- Parameters:
type- the type for which the schema should be enhanced / augmented
-
createDataFetcher
abstract DataFetcher<Cypher> createDataFetcher(AugmentationHandler.OperationType operationType, FieldDefinition fieldDefinition)
The 2nd step is creating a data fetcher based on a field definition. The field may be an augmented field (from step 1) but can also be a user specified query / mutation field
- Parameters:
operationType- the type of the fieldfieldDefinition- the filed to create the data fetcher for
-
relationship
final RelationshipInfo<ImplementingTypeDefinition<?>> relationship(ImplementingTypeDefinition<?> $self)
-
getScalarFields
final List<FieldDefinition> getScalarFields(ImplementingTypeDefinition<?> $self)
-
getFieldDefinition
final <Error class: unknown class> getFieldDefinition(ImplementingTypeDefinition<?> $self, String name)
-
getIdField
final <Error class: unknown class> getIdField(ImplementingTypeDefinition<?> $self)
-
resolve
final TypeDefinition<?> resolve(Type<?> $self)
-
isNativeId
final Boolean isNativeId(FieldDefinition $self)
-
dynamicPrefix
final String dynamicPrefix(FieldDefinition $self)
-
isRelationship
final Boolean isRelationship(FieldDefinition $self)
-
getUnwrappedType
final TypeDefinition<TypeDefinition<?>> getUnwrappedType(TypeDefinitionRegistry $self, String name)
-
cypherDirective
final CypherDirective cypherDirective(DirectivesContainer<?> $self)
-
getDirectiveArgument
final <T extends Any> T getDirectiveArgument(DirectivesContainer<?> $self, String directiveName, String argumentName, T defaultValue)
-
-
-
-