Package 

Class SchemaBuilder

  • All Implemented Interfaces:

    
    public final class SchemaBuilder
    
                        

    A class for augmenting a type definition registry and generate the corresponding data fetcher. There are factory methods, that can be used to simplify augmenting a schema.

    Generating the schema is done by invoking the following methods:

    Each of these steps can be called manually to enhance an existing TypeDefinitionRegistry

    • Constructor Detail

      • SchemaBuilder

        SchemaBuilder(TypeDefinitionRegistry typeDefinitionRegistry, SchemaConfig schemaConfig)
    • Method Detail

      • augmentTypes

         final Unit augmentTypes()

        Generated additionally query and mutation fields according to the types present in the typeDefinitionRegistry. This method will also augment relation fields, so filtering and sorting is available for them

      • registerScalars

         final Unit registerScalars(RuntimeWiring.Builder builder)

        Register scalars of this library in the @param builder

        Parameters:
        builder - a builder to create a runtime wiring
      • registerTypeNameResolver

         final Unit registerTypeNameResolver(RuntimeWiring.Builder builder)

        Register type name resolver in the @param builder

        Parameters:
        builder - a builder to create a runtime wiring
      • registerDataFetcher

        @JvmOverloads() final Unit registerDataFetcher(GraphQLCodeRegistry.Builder codeRegistryBuilder, DataFetchingInterceptor dataFetchingInterceptor, TypeDefinitionRegistry typeDefinitionRegistry)

        Register data fetcher in a @param codeRegistryBuilder. The data fetcher of this library generate a cypher query and if provided use the dataFetchingInterceptor to run this cypher against a neo4j db.

        Parameters:
        codeRegistryBuilder - a builder to create a code registry
        dataFetchingInterceptor - a function to convert a cypher string into an object by calling the neo4j db
      • registerDataFetcher

        @JvmOverloads() final Unit registerDataFetcher(GraphQLCodeRegistry.Builder codeRegistryBuilder, DataFetchingInterceptor dataFetchingInterceptor)

        Register data fetcher in a @param codeRegistryBuilder. The data fetcher of this library generate a cypher query and if provided use the dataFetchingInterceptor to run this cypher against a neo4j db.

        Parameters:
        codeRegistryBuilder - a builder to create a code registry
        dataFetchingInterceptor - a function to convert a cypher string into an object by calling the neo4j db