types

package
v0.6.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 20, 2021 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Overview

Package types defines the different interfaces used in the GraphQL implementation

Package types defines the different interfaces used in the GraphQL implementation

Package types defines the different interfaces used in the GraphQL implementation

Package types defines the different interfaces used in the GraphQL implementation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ResolverCreatorContract

type ResolverCreatorContract interface {
	// NewRootResolver creates new RootResolverContract and returns it
	// ctx: Mandatory. Reference to the context
	// Returns the RootResolverContract or error if something goes wrong
	NewRootResolver(ctx context.Context) (RootResolverContract, error)

	// NewUserResolver creates new UserResolverContract and returns it
	// ctx: Mandatory. Reference to the context
	// userID: Mandatory. The user unique identifier
	// Returns the UserResolverContract or error if something goes wrong
	NewUserResolver(
		ctx context.Context,
		userID string) (UserResolverContract, error)

	relay.PageInfoResolverCreatorContract
	project.QueryResolverCreatorContract
	project.MutationResolverCreatorContract
	edgecluster.QueryResolverCreatorContract
	edgecluster.MutationResolverCreatorContract
}

ResolverCreatorContract declares the service that can create different resolvers

type RootResolverContract

type RootResolverContract interface {
	// User returns user resolver
	// ctx: Mandatory. Reference to the context
	// Returns the user resolver or error if something goes wrong
	User(ctx context.Context) (UserResolverContract, error)

	project.RootResolverContract
	edgecluster.RootResolverContract
}

RootResolverContract declares the root resolver

type SortingOptionPair

type SortingOptionPair struct {
	Name      string
	Direction string
}

type UserEdgeClusterInputArgument

type UserEdgeClusterInputArgument struct {
	EdgeClusterID graphql.ID
}

type UserEdgeClustersInputArgument

type UserEdgeClustersInputArgument struct {
	relay.ConnectionArgument
	SortingOptions *[]SortingOptionPair
	EdgeClusterIDs *[]graphql.ID
	ProjectIDs     *[]graphql.ID
}

type UserProjectInputArgument added in v0.5.0

type UserProjectInputArgument struct {
	ProjectID string
}

type UserProjectsInputArgument added in v0.5.0

type UserProjectsInputArgument struct {
	relay.ConnectionArgument
	SortingOptions *[]SortingOptionPair
	ProjectIDs     *[]graphql.ID
}

type UserResolverContract

type UserResolverContract interface {
	// ID returns user unique identifier
	// ctx: Mandatory. Reference to the context
	// Returns the user unique identifier
	ID(ctx context.Context) graphql.ID

	// Project returns project resolver
	// ctx: Mandatory. Reference to the context
	// args: Mandatory. The argument list
	// Returns the project resolver or error if something goes wrong
	Project(
		ctx context.Context,
		args UserProjectInputArgument) (project.ProjectResolverContract, error)

	// Projects returns project connection compatible with graphql-relay
	// ctx: Mandatory. Reference to the context
	// args: Mandatory. The argument list
	// Returns the project resolver or error if something goes wrong
	Projects(
		ctx context.Context,
		args UserProjectsInputArgument) (project.ProjectTypeConnectionResolverContract, error)

	// EdgeCluster returns project resolver
	// ctx: Mandatory. Reference to the context
	// args: Mandatory. The argument list
	// Returns the project resolver or error if something goes wrong
	EdgeCluster(
		ctx context.Context,
		args UserEdgeClusterInputArgument) (edgecluster.EdgeClusterResolverContract, error)

	// EdgeClusters returns project connection compatible with graphql-relay
	// ctx: Mandatory. Reference to the context
	// args: Mandatory. The argument list
	// Returns the project resolver or error if something goes wrong
	EdgeClusters(
		ctx context.Context,
		args UserEdgeClustersInputArgument) (edgecluster.EdgeClusterTypeConnectionResolverContract, error)
}

UserResolverContract declares the resolver that can retrieve user information

Directories

Path Synopsis
packae edgecluster implements used edge cluster related types in the GraphQL transport layer packae edgecluster implements used edge cluster related types in the GraphQL transport layer packae edgecluster implements used edge cluster related types in the GraphQL transport layer packae edgecluster implements used edge cluster related types in the GraphQL transport layer packae edgecluster implements used edge cluster related types in the GraphQL transport layer packae edgecluster implements used edge cluster related types in the GraphQL transport layer packae edgecluster implements used edge cluster related types in the GraphQL transport layer packae edgecluster implements used edge cluster related types in the GraphQL transport layer
packae edgecluster implements used edge cluster related types in the GraphQL transport layer packae edgecluster implements used edge cluster related types in the GraphQL transport layer packae edgecluster implements used edge cluster related types in the GraphQL transport layer packae edgecluster implements used edge cluster related types in the GraphQL transport layer packae edgecluster implements used edge cluster related types in the GraphQL transport layer packae edgecluster implements used edge cluster related types in the GraphQL transport layer packae edgecluster implements used edge cluster related types in the GraphQL transport layer packae edgecluster implements used edge cluster related types in the GraphQL transport layer
packae project implements used project related types in the GraphQL transport layer packae project implements used project related types in the GraphQL transport layer packae project implements used project related types in the GraphQL transport layer
packae project implements used project related types in the GraphQL transport layer packae project implements used project related types in the GraphQL transport layer packae project implements used project related types in the GraphQL transport layer
packae relay implements common relay types used in the GraphQL transport layer packae relay implements common relay types used in the GraphQL transport layer
packae relay implements common relay types used in the GraphQL transport layer packae relay implements common relay types used in the GraphQL transport layer

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL