Package com.expediagroup.graphql.generator.federation.directives
See: Description
-
Annotation Summary Annotation Description ComposeDirective
By default, Supergraph schema excludes all custom directives.directive @composeDirective(name: String!) repeatable on SCHEMA
ContactDirective
Contact schema directive can be used to provide team contact information to your subgraph schema.directive @contact( "Contact title of the subgraph owner" name: String! "URL where the subgraph's owner can be reached" url: String "Other relevant notes can be included here; supports markdown links" description: String ) on SCHEMA
ExtendsDirective
Extends directive is used to represent type extensions in the schema.directive @extends on OBJECT | INTERFACE
ExternalDirective
The @external directive is used to mark a field as owned by another service.# federation v1 definition directive @external on FIELD_DEFINITION # federation v2 definition directive @external on OBJECT | FIELD_DEFINITION
FieldSet Annotation representing _FieldSet scalar type that is used to represent a set of fields. InaccessibleDirective
Inaccessible directive marks location within schema as inaccessible from the GraphQL Gateway.directive @inaccessible on FIELD_DEFINITION | OBJECT | INTERFACE | UNION | ENUM | ENUM_VALUE | SCALAR | INPUT_OBJECT | INPUT_FIELD_DEFINITION | ARGUMENT_DEFINITION
InterfaceObjectDirective
This directive provides meta information to the router that this entity type defined within this subgraph is an interface in the supergraph.directive @interfaceObject on OBJECT
KeyDirective
The @key directive is used to indicate a combination of fields that can be used to uniquely identify and fetch an object or interface.# federation v1 definition directive @key(fields: _FieldSet!) repeatable on OBJECT | INTERFACE # federation v2 definition directive @key(fields: _FieldSet!, resolvable: Boolean = true) repeatable on OBJECT | INTERFACE
LinkDirective
Thedirective @link(url: String, import: [Import]) repeatable on SCHEMA
@link
directive links definitions within the document to external schemas.OverrideDirective
The @override directive is used to indicate that the current subgraph is taking responsibility for resolving the marked field away from the subgraph specified in the from argument.directive @override(from: String!) on FIELD_DEFINITION
ProvidesDirective
The @provides directive is used to annotate the expected returned fieldset from a field on a base type that is guaranteed to be selectable by the gateway.directive @provides(fields: _FieldSet!) on FIELD_DEFINITION
RequiresDirective
The @requires directive is used to annotate the required input field set from a base type for a resolver.directive @requires(fields: _FieldSet!) on FIELD_DEFINITON
ShareableDirective
Shareable directive indicates that given object and/or field can be resolved by multiple subgraphs.directive @shareable repeatable on FIELD_DEFINITION | OBJECT
TagDirective
Tag directive allows users to annotate fields and types with additional metadata information.directive @tag(name: String!) repeatable on FIELD_DEFINITION | OBJECT | INTERFACE | UNION | ARGUMENT_DEFINITION | SCALAR | ENUM | ENUM_VALUE | INPUT_OBJECT | INPUT_FIELD_DEFINITION
-
Class Summary Class Description LinkDirectiveKt