Package com.expediagroup.graphql.generator.federation.directives
See: Description
-
Annotation Summary Annotation Description AuthenticatedDirective
Directive that is used to indicate that the target element is accessible only to the authenticated supergraph users.directive @authenticated on ENUM | FIELD_DEFINITION | INTERFACE | OBJECT | SCALAR
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 deprecated.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# 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
@key
directive is used to indicate a combination of fields that can be used to uniquely identify and fetch an object or interface.LinkDirective
Thedirective @link(url: String!, as: String, import: [Import]) repeatable on SCHEMA
@link
directive links definitions within the document to external schemas.LinkImport Annotation representing Import scalar type that is used to by @link directive to import types from a specification. LinkedSpec Meta annotation used to indicate that given directive/type is associated with imported @link
specification.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
Thedirective @provides(fields: _FieldSet!) on FIELD_DEFINITION
@provides
directive is a router optimization hint specifying field set that can be resolved locally at the given subgraph through this particular query path.RequiresDirective
Thedirective @requires(fields: _FieldSet!) on FIELD_DEFINITON
@requires
directive is used to specify external (provided by other subgraphs) entity fields that are needed to resolve target field.RequiresScopesDirective
Directive that is used to indicate that the target element is accessible only to the authenticated supergraph users with the appropriate JWT scopes.directive @requiresScopes(scopes: [[Scope!]!]!) on ENUM | FIELD_DEFINITION | INTERFACE | OBJECT | SCALAR
Scope Annotation representing JWT scope scalar type that is used by the `@requiresScope directive. Scopes 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