v2

package
v1.10.19 Latest Latest
Warning

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

Go to latest
Published: Mar 29, 2022 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ValueProvider_TypedValueProvider_Type_name = map[int32]string{
		0: "STRING",
		1: "INT",
		2: "FLOAT",
		3: "BOOLEAN",
	}
	ValueProvider_TypedValueProvider_Type_value = map[string]int32{
		"STRING":  0,
		"INT":     1,
		"FLOAT":   2,
		"BOOLEAN": 3,
	}
)

Enum value maps for ValueProvider_TypedValueProvider_Type.

View Source
var File_github_com_solo_io_gloo_projects_gloo_api_external_envoy_extensions_graphql_graphql_proto protoreflect.FileDescriptor

Functions

This section is empty.

Types

type AbstractTypeResolver

type AbstractTypeResolver struct {
	// contains filtered or unexported fields
}

NOT IMPLEMENTED Resolve an abstract type (union or interface) to a real type. When implemented, this message will be a field in the Resolution message.

func (*AbstractTypeResolver) Descriptor deprecated

func (*AbstractTypeResolver) Descriptor() ([]byte, []int)

Deprecated: Use AbstractTypeResolver.ProtoReflect.Descriptor instead.

func (*AbstractTypeResolver) ProtoMessage

func (*AbstractTypeResolver) ProtoMessage()

func (*AbstractTypeResolver) ProtoReflect

func (x *AbstractTypeResolver) ProtoReflect() protoreflect.Message

func (*AbstractTypeResolver) Reset

func (x *AbstractTypeResolver) Reset()

func (*AbstractTypeResolver) String

func (x *AbstractTypeResolver) String() string

type ExecutableSchema

type ExecutableSchema struct {

	// Schema to use in string format.
	SchemaDefinition *v3.DataSource `protobuf:"bytes,1,opt,name=schema_definition,json=schemaDefinition,proto3" json:"schema_definition,omitempty"`
	// how to execute the schema
	Executor *Executor `protobuf:"bytes,2,opt,name=executor,proto3" json:"executor,omitempty"`
	// Schema extensions
	Extensions map[string]*any.Any `` /* 161-byte string literal not displayed */
	// contains filtered or unexported fields
}

func (*ExecutableSchema) Descriptor deprecated

func (*ExecutableSchema) Descriptor() ([]byte, []int)

Deprecated: Use ExecutableSchema.ProtoReflect.Descriptor instead.

func (*ExecutableSchema) GetExecutor

func (x *ExecutableSchema) GetExecutor() *Executor

func (*ExecutableSchema) GetExtensions

func (x *ExecutableSchema) GetExtensions() map[string]*any.Any

func (*ExecutableSchema) GetSchemaDefinition

func (x *ExecutableSchema) GetSchemaDefinition() *v3.DataSource

func (*ExecutableSchema) ProtoMessage

func (*ExecutableSchema) ProtoMessage()

func (*ExecutableSchema) ProtoReflect

func (x *ExecutableSchema) ProtoReflect() protoreflect.Message

func (*ExecutableSchema) Reset

func (x *ExecutableSchema) Reset()

func (*ExecutableSchema) String

func (x *ExecutableSchema) String() string

type Executor

type Executor struct {

	// Types that are assignable to Executor:
	//	*Executor_Local_
	//	*Executor_Remote_
	Executor isExecutor_Executor `protobuf_oneof:"executor"`
	// contains filtered or unexported fields
}

func (*Executor) Descriptor deprecated

func (*Executor) Descriptor() ([]byte, []int)

Deprecated: Use Executor.ProtoReflect.Descriptor instead.

func (*Executor) GetExecutor

func (m *Executor) GetExecutor() isExecutor_Executor

func (*Executor) GetLocal

func (x *Executor) GetLocal() *Executor_Local

func (*Executor) GetRemote

func (x *Executor) GetRemote() *Executor_Remote

func (*Executor) ProtoMessage

func (*Executor) ProtoMessage()

func (*Executor) ProtoReflect

func (x *Executor) ProtoReflect() protoreflect.Message

func (*Executor) Reset

func (x *Executor) Reset()

func (*Executor) String

func (x *Executor) String() string

type Executor_Local

type Executor_Local struct {

	// The resolver map to use to resolve the schema.
	Resolutions []*Resolution `protobuf:"bytes,1,rep,name=resolutions,proto3" json:"resolutions,omitempty"`
	// Do we enable introspection for the schema? general recommendation is to
	// disable this for production and hence it defaults to false.
	EnableIntrospection bool `protobuf:"varint,2,opt,name=enable_introspection,json=enableIntrospection,proto3" json:"enable_introspection,omitempty"`
	// contains filtered or unexported fields
}

Execute schema using resolvers.

func (*Executor_Local) Descriptor deprecated

func (*Executor_Local) Descriptor() ([]byte, []int)

Deprecated: Use Executor_Local.ProtoReflect.Descriptor instead.

func (*Executor_Local) GetEnableIntrospection

func (x *Executor_Local) GetEnableIntrospection() bool

func (*Executor_Local) GetResolutions

func (x *Executor_Local) GetResolutions() []*Resolution

func (*Executor_Local) ProtoMessage

func (*Executor_Local) ProtoMessage()

func (*Executor_Local) ProtoReflect

func (x *Executor_Local) ProtoReflect() protoreflect.Message

func (*Executor_Local) Reset

func (x *Executor_Local) Reset()

func (*Executor_Local) String

func (x *Executor_Local) String() string

type Executor_Local_

type Executor_Local_ struct {
	Local *Executor_Local `protobuf:"bytes,1,opt,name=local,proto3,oneof"`
}

type Executor_Remote

type Executor_Remote struct {

	// Executes a query remotly, as a graphql client.
	Cluster string `protobuf:"bytes,1,opt,name=cluster,proto3" json:"cluster,omitempty"`
	// contains filtered or unexported fields
}

NOT IMPLEMENTED YET! Execute schema by querying a graphql upstream.

func (*Executor_Remote) Descriptor deprecated

func (*Executor_Remote) Descriptor() ([]byte, []int)

Deprecated: Use Executor_Remote.ProtoReflect.Descriptor instead.

func (*Executor_Remote) GetCluster added in v1.10.0

func (x *Executor_Remote) GetCluster() string

func (*Executor_Remote) ProtoMessage

func (*Executor_Remote) ProtoMessage()

func (*Executor_Remote) ProtoReflect

func (x *Executor_Remote) ProtoReflect() protoreflect.Message

func (*Executor_Remote) Reset

func (x *Executor_Remote) Reset()

func (*Executor_Remote) String

func (x *Executor_Remote) String() string

type Executor_Remote_

type Executor_Remote_ struct {
	Remote *Executor_Remote `protobuf:"bytes,2,opt,name=remote,proto3,oneof"`
}

type GraphQLConfig

type GraphQLConfig struct {
	// contains filtered or unexported fields
}

Filter Listener config. Empty as the filter must be configured on the route level.

func (*GraphQLConfig) Descriptor deprecated

func (*GraphQLConfig) Descriptor() ([]byte, []int)

Deprecated: Use GraphQLConfig.ProtoReflect.Descriptor instead.

func (*GraphQLConfig) ProtoMessage

func (*GraphQLConfig) ProtoMessage()

func (*GraphQLConfig) ProtoReflect

func (x *GraphQLConfig) ProtoReflect() protoreflect.Message

func (*GraphQLConfig) Reset

func (x *GraphQLConfig) Reset()

func (*GraphQLConfig) String

func (x *GraphQLConfig) String() string

type GraphQLRouteConfig

type GraphQLRouteConfig struct {

	// Deprecated. will be removed when gloo 1.10 is released
	Schema *v3.DataSource `protobuf:"bytes,1,opt,name=schema,proto3" json:"schema,omitempty"`
	// Deprecated. will be removed when gloo 1.10 is released
	EnableIntrospection bool `protobuf:"varint,2,opt,name=enable_introspection,json=enableIntrospection,proto3" json:"enable_introspection,omitempty"`
	// Deprecated. will be removed when gloo 1.10 is released
	Resolutions      []*Resolution     `protobuf:"bytes,3,rep,name=resolutions,proto3" json:"resolutions,omitempty"`
	ExecutableSchema *ExecutableSchema `protobuf:"bytes,4,opt,name=executable_schema,json=executableSchema,proto3" json:"executable_schema,omitempty"`
	// contains filtered or unexported fields
}

Filter Route config. Routes that have this config will execute graphql queries, and will not make it to the router filter. i.e. this filter will terminate the request for these routes.

func (*GraphQLRouteConfig) Descriptor deprecated

func (*GraphQLRouteConfig) Descriptor() ([]byte, []int)

Deprecated: Use GraphQLRouteConfig.ProtoReflect.Descriptor instead.

func (*GraphQLRouteConfig) GetEnableIntrospection added in v1.10.0

func (x *GraphQLRouteConfig) GetEnableIntrospection() bool

func (*GraphQLRouteConfig) GetExecutableSchema

func (x *GraphQLRouteConfig) GetExecutableSchema() *ExecutableSchema

func (*GraphQLRouteConfig) GetResolutions added in v1.10.0

func (x *GraphQLRouteConfig) GetResolutions() []*Resolution

func (*GraphQLRouteConfig) GetSchema added in v1.10.0

func (x *GraphQLRouteConfig) GetSchema() *v3.DataSource

func (*GraphQLRouteConfig) ProtoMessage

func (*GraphQLRouteConfig) ProtoMessage()

func (*GraphQLRouteConfig) ProtoReflect

func (x *GraphQLRouteConfig) ProtoReflect() protoreflect.Message

func (*GraphQLRouteConfig) Reset

func (x *GraphQLRouteConfig) Reset()

func (*GraphQLRouteConfig) String

func (x *GraphQLRouteConfig) String() string

type GrpcDescriptorRegistry

type GrpcDescriptorRegistry struct {
	ProtoDescriptors *v3.DataSource `protobuf:"bytes,1,opt,name=proto_descriptors,json=protoDescriptors,proto3" json:"proto_descriptors,omitempty"`
	// contains filtered or unexported fields
}

Defines a configuration for serializing and deserializing requests for a gRPC resolver. Is a Schema Extension

func (*GrpcDescriptorRegistry) Descriptor deprecated

func (*GrpcDescriptorRegistry) Descriptor() ([]byte, []int)

Deprecated: Use GrpcDescriptorRegistry.ProtoReflect.Descriptor instead.

func (*GrpcDescriptorRegistry) GetProtoDescriptors

func (x *GrpcDescriptorRegistry) GetProtoDescriptors() *v3.DataSource

func (*GrpcDescriptorRegistry) ProtoMessage

func (*GrpcDescriptorRegistry) ProtoMessage()

func (*GrpcDescriptorRegistry) ProtoReflect

func (x *GrpcDescriptorRegistry) ProtoReflect() protoreflect.Message

func (*GrpcDescriptorRegistry) Reset

func (x *GrpcDescriptorRegistry) Reset()

func (*GrpcDescriptorRegistry) String

func (x *GrpcDescriptorRegistry) String() string

type GrpcRequestTemplate

type GrpcRequestTemplate struct {

	// json representation of outgoing gRPC message to be sent to gRPC service
	OutgoingMessageJson *JsonValue `protobuf:"bytes,1,opt,name=outgoing_message_json,json=outgoingMessageJson,proto3" json:"outgoing_message_json,omitempty"`
	// request has shape matching service with name registered in registry
	// is the full_name(), e.g. main.Bookstore
	ServiceName string `protobuf:"bytes,2,opt,name=service_name,json=serviceName,proto3" json:"service_name,omitempty"`
	// make request to method with this name on the grpc service defined above
	// is just the name(), e.g. GetBook
	MethodName string `protobuf:"bytes,3,opt,name=method_name,json=methodName,proto3" json:"method_name,omitempty"`
	// in the future, we may want to make this a map<string, ValueProvider>
	// once we know better what the use cases are
	RequestMetadata map[string]string `` /* 194-byte string literal not displayed */
	// contains filtered or unexported fields
}

Defines a configuration for generating outgoing requests for a resolver.

func (*GrpcRequestTemplate) Descriptor deprecated

func (*GrpcRequestTemplate) Descriptor() ([]byte, []int)

Deprecated: Use GrpcRequestTemplate.ProtoReflect.Descriptor instead.

func (*GrpcRequestTemplate) GetMethodName

func (x *GrpcRequestTemplate) GetMethodName() string

func (*GrpcRequestTemplate) GetOutgoingMessageJson

func (x *GrpcRequestTemplate) GetOutgoingMessageJson() *JsonValue

func (*GrpcRequestTemplate) GetRequestMetadata

func (x *GrpcRequestTemplate) GetRequestMetadata() map[string]string

func (*GrpcRequestTemplate) GetServiceName

func (x *GrpcRequestTemplate) GetServiceName() string

func (*GrpcRequestTemplate) ProtoMessage

func (*GrpcRequestTemplate) ProtoMessage()

func (*GrpcRequestTemplate) ProtoReflect

func (x *GrpcRequestTemplate) ProtoReflect() protoreflect.Message

func (*GrpcRequestTemplate) Reset

func (x *GrpcRequestTemplate) Reset()

func (*GrpcRequestTemplate) String

func (x *GrpcRequestTemplate) String() string

type GrpcResolver

type GrpcResolver struct {
	ServerUri *v3.HttpUri `protobuf:"bytes,1,opt,name=server_uri,json=serverUri,proto3" json:"server_uri,omitempty"`
	// configuration used to compose the outgoing request to a gRPC endpoint
	RequestTransform *GrpcRequestTemplate `protobuf:"bytes,2,opt,name=request_transform,json=requestTransform,proto3" json:"request_transform,omitempty"`
	// pre-execution engine transformations
	//
	// Request flow: GraphQL request -> request_transform (instantiate gRPC request) ->
	// gRPC API resp -> pre_execution_transform -> execution engine ->
	// complete GraphQL field response
	//
	//ResponseTemplate pre_execution_transform = 3;
	SpanName string `protobuf:"bytes,4,opt,name=span_name,json=spanName,proto3" json:"span_name,omitempty"`
	// contains filtered or unexported fields
}

func (*GrpcResolver) Descriptor deprecated

func (*GrpcResolver) Descriptor() ([]byte, []int)

Deprecated: Use GrpcResolver.ProtoReflect.Descriptor instead.

func (*GrpcResolver) GetRequestTransform

func (x *GrpcResolver) GetRequestTransform() *GrpcRequestTemplate

func (*GrpcResolver) GetServerUri

func (x *GrpcResolver) GetServerUri() *v3.HttpUri

func (*GrpcResolver) GetSpanName

func (x *GrpcResolver) GetSpanName() string

func (*GrpcResolver) ProtoMessage

func (*GrpcResolver) ProtoMessage()

func (*GrpcResolver) ProtoReflect

func (x *GrpcResolver) ProtoReflect() protoreflect.Message

func (*GrpcResolver) Reset

func (x *GrpcResolver) Reset()

func (*GrpcResolver) String

func (x *GrpcResolver) String() string

type JsonKeyValue

type JsonKeyValue struct {

	// PARTIALLY IMPLEMENTED
	// if empty, the value will be parsed as json and replace the entire
	// previously-parsed json value --> this part is only needed for gRPC
	// and thus not implemented yet
	Key   string     `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
	Value *JsonValue `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
	// contains filtered or unexported fields
}

func (*JsonKeyValue) Descriptor deprecated

func (*JsonKeyValue) Descriptor() ([]byte, []int)

Deprecated: Use JsonKeyValue.ProtoReflect.Descriptor instead.

func (*JsonKeyValue) GetKey

func (x *JsonKeyValue) GetKey() string

func (*JsonKeyValue) GetValue

func (x *JsonKeyValue) GetValue() *JsonValue

func (*JsonKeyValue) ProtoMessage

func (*JsonKeyValue) ProtoMessage()

func (*JsonKeyValue) ProtoReflect

func (x *JsonKeyValue) ProtoReflect() protoreflect.Message

func (*JsonKeyValue) Reset

func (x *JsonKeyValue) Reset()

func (*JsonKeyValue) String

func (x *JsonKeyValue) String() string

type JsonNode

type JsonNode struct {

	// if keys repeat, the latest one replaces any earlier values associated
	// with that key.
	//
	// repeated list, rather than a map, to have ordering to allow for merge
	// semantics within the data plane, for example:
	// - gRPC input uses special empty string for input key to set entire body
	// - gRPC wants to replace a certain field in parsed body from GraphQL arg
	KeyValues []*JsonKeyValue `protobuf:"bytes,1,rep,name=key_values,json=keyValues,proto3" json:"key_values,omitempty"`
	// contains filtered or unexported fields
}

Represents a typed JSON structure

func (*JsonNode) Descriptor deprecated

func (*JsonNode) Descriptor() ([]byte, []int)

Deprecated: Use JsonNode.ProtoReflect.Descriptor instead.

func (*JsonNode) GetKeyValues

func (x *JsonNode) GetKeyValues() []*JsonKeyValue

func (*JsonNode) ProtoMessage

func (*JsonNode) ProtoMessage()

func (*JsonNode) ProtoReflect

func (x *JsonNode) ProtoReflect() protoreflect.Message

func (*JsonNode) Reset

func (x *JsonNode) Reset()

func (*JsonNode) String

func (x *JsonNode) String() string

type JsonValue

type JsonValue struct {

	// Types that are assignable to JsonVal:
	//	*JsonValue_Node
	//	*JsonValue_ValueProvider
	//	*JsonValue_List
	JsonVal isJsonValue_JsonVal `protobuf_oneof:"json_val"`
	// contains filtered or unexported fields
}

func (*JsonValue) Descriptor deprecated

func (*JsonValue) Descriptor() ([]byte, []int)

Deprecated: Use JsonValue.ProtoReflect.Descriptor instead.

func (*JsonValue) GetJsonVal

func (m *JsonValue) GetJsonVal() isJsonValue_JsonVal

func (*JsonValue) GetList

func (x *JsonValue) GetList() *JsonValueList

func (*JsonValue) GetNode

func (x *JsonValue) GetNode() *JsonNode

func (*JsonValue) GetValueProvider

func (x *JsonValue) GetValueProvider() *ValueProvider

func (*JsonValue) ProtoMessage

func (*JsonValue) ProtoMessage()

func (*JsonValue) ProtoReflect

func (x *JsonValue) ProtoReflect() protoreflect.Message

func (*JsonValue) Reset

func (x *JsonValue) Reset()

func (*JsonValue) String

func (x *JsonValue) String() string

type JsonValueList

type JsonValueList struct {
	Values []*JsonValue `protobuf:"bytes,1,rep,name=values,proto3" json:"values,omitempty"`
	// contains filtered or unexported fields
}

func (*JsonValueList) Descriptor deprecated

func (*JsonValueList) Descriptor() ([]byte, []int)

Deprecated: Use JsonValueList.ProtoReflect.Descriptor instead.

func (*JsonValueList) GetValues

func (x *JsonValueList) GetValues() []*JsonValue

func (*JsonValueList) ProtoMessage

func (*JsonValueList) ProtoMessage()

func (*JsonValueList) ProtoReflect

func (x *JsonValueList) ProtoReflect() protoreflect.Message

func (*JsonValueList) Reset

func (x *JsonValueList) Reset()

func (*JsonValueList) String

func (x *JsonValueList) String() string

type JsonValue_List

type JsonValue_List struct {
	List *JsonValueList `protobuf:"bytes,3,opt,name=list,proto3,oneof"`
}

type JsonValue_Node

type JsonValue_Node struct {
	Node *JsonNode `protobuf:"bytes,1,opt,name=node,proto3,oneof"`
}

type JsonValue_ValueProvider

type JsonValue_ValueProvider struct {
	ValueProvider *ValueProvider `protobuf:"bytes,2,opt,name=value_provider,json=valueProvider,proto3,oneof"`
}

type Path

type Path struct {
	Segments []*PathSegment `protobuf:"bytes,1,rep,name=segments,proto3" json:"segments,omitempty"`
	// contains filtered or unexported fields
}

func (*Path) Descriptor deprecated

func (*Path) Descriptor() ([]byte, []int)

Deprecated: Use Path.ProtoReflect.Descriptor instead.

func (*Path) GetSegments

func (x *Path) GetSegments() []*PathSegment

func (*Path) ProtoMessage

func (*Path) ProtoMessage()

func (*Path) ProtoReflect

func (x *Path) ProtoReflect() protoreflect.Message

func (*Path) Reset

func (x *Path) Reset()

func (*Path) String

func (x *Path) String() string

type PathSegment

type PathSegment struct {

	// Types that are assignable to Segment:
	//	*PathSegment_Key
	//	*PathSegment_Index
	//	*PathSegment_All
	Segment isPathSegment_Segment `protobuf_oneof:"segment"`
	// contains filtered or unexported fields
}

used to reference into json structures by key(s)

func (*PathSegment) Descriptor deprecated

func (*PathSegment) Descriptor() ([]byte, []int)

Deprecated: Use PathSegment.ProtoReflect.Descriptor instead.

func (*PathSegment) GetAll

func (x *PathSegment) GetAll() bool

func (*PathSegment) GetIndex

func (x *PathSegment) GetIndex() uint32

func (*PathSegment) GetKey

func (x *PathSegment) GetKey() string

func (*PathSegment) GetSegment

func (m *PathSegment) GetSegment() isPathSegment_Segment

func (*PathSegment) ProtoMessage

func (*PathSegment) ProtoMessage()

func (*PathSegment) ProtoReflect

func (x *PathSegment) ProtoReflect() protoreflect.Message

func (*PathSegment) Reset

func (x *PathSegment) Reset()

func (*PathSegment) String

func (x *PathSegment) String() string

type PathSegment_All

type PathSegment_All struct {
	// Extracts all elements from a list
	All bool `protobuf:"varint,3,opt,name=all,proto3,oneof"`
}

type PathSegment_Index

type PathSegment_Index struct {
	// Extract element at list
	Index uint32 `protobuf:"varint,2,opt,name=index,proto3,oneof"`
}

type PathSegment_Key

type PathSegment_Key struct {
	// This will extract a key from a Map value.
	Key string `protobuf:"bytes,1,opt,name=key,proto3,oneof"`
}

type Query added in v1.10.0

type Query struct {
	Query *v3.DataSource `protobuf:"bytes,1,opt,name=query,proto3" json:"query,omitempty"`
	// contains filtered or unexported fields
}

NOT IMPLEMENTED When we'll support prepared queries, this will be the type containing the query.

func (*Query) Descriptor deprecated added in v1.10.0

func (*Query) Descriptor() ([]byte, []int)

Deprecated: Use Query.ProtoReflect.Descriptor instead.

func (*Query) GetQuery added in v1.10.0

func (x *Query) GetQuery() *v3.DataSource

func (*Query) ProtoMessage added in v1.10.0

func (*Query) ProtoMessage()

func (*Query) ProtoReflect added in v1.10.0

func (x *Query) ProtoReflect() protoreflect.Message

func (*Query) Reset added in v1.10.0

func (x *Query) Reset()

func (*Query) String added in v1.10.0

func (x *Query) String() string

type QueryMatcher

type QueryMatcher struct {

	// Types that are assignable to Match:
	//	*QueryMatcher_FieldMatcher_
	Match isQueryMatcher_Match `protobuf_oneof:"match"`
	// contains filtered or unexported fields
}

func (*QueryMatcher) Descriptor deprecated

func (*QueryMatcher) Descriptor() ([]byte, []int)

Deprecated: Use QueryMatcher.ProtoReflect.Descriptor instead.

func (*QueryMatcher) GetFieldMatcher

func (x *QueryMatcher) GetFieldMatcher() *QueryMatcher_FieldMatcher

func (*QueryMatcher) GetMatch

func (m *QueryMatcher) GetMatch() isQueryMatcher_Match

func (*QueryMatcher) ProtoMessage

func (*QueryMatcher) ProtoMessage()

func (*QueryMatcher) ProtoReflect

func (x *QueryMatcher) ProtoReflect() protoreflect.Message

func (*QueryMatcher) Reset

func (x *QueryMatcher) Reset()

func (*QueryMatcher) String

func (x *QueryMatcher) String() string

type QueryMatcher_FieldMatcher

type QueryMatcher_FieldMatcher struct {

	// Object type. For example, Query.
	Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"`
	// Field with in the object.
	Field string `protobuf:"bytes,2,opt,name=field,proto3" json:"field,omitempty"`
	// contains filtered or unexported fields
}

func (*QueryMatcher_FieldMatcher) Descriptor deprecated

func (*QueryMatcher_FieldMatcher) Descriptor() ([]byte, []int)

Deprecated: Use QueryMatcher_FieldMatcher.ProtoReflect.Descriptor instead.

func (*QueryMatcher_FieldMatcher) GetField

func (x *QueryMatcher_FieldMatcher) GetField() string

func (*QueryMatcher_FieldMatcher) GetType

func (x *QueryMatcher_FieldMatcher) GetType() string

func (*QueryMatcher_FieldMatcher) ProtoMessage

func (*QueryMatcher_FieldMatcher) ProtoMessage()

func (*QueryMatcher_FieldMatcher) ProtoReflect

func (*QueryMatcher_FieldMatcher) Reset

func (x *QueryMatcher_FieldMatcher) Reset()

func (*QueryMatcher_FieldMatcher) String

func (x *QueryMatcher_FieldMatcher) String() string

type QueryMatcher_FieldMatcher_

type QueryMatcher_FieldMatcher_ struct {
	FieldMatcher *QueryMatcher_FieldMatcher `protobuf:"bytes,1,opt,name=field_matcher,json=fieldMatcher,proto3,oneof"`
}

type RESTResolver

type RESTResolver struct {
	ServerUri *v3.HttpUri `protobuf:"bytes,1,opt,name=server_uri,json=serverUri,proto3" json:"server_uri,omitempty"`
	// configuration used to compose the outgoing request to a REST API
	RequestTransform *RequestTemplate `protobuf:"bytes,2,opt,name=request_transform,json=requestTransform,proto3" json:"request_transform,omitempty"`
	// pre-execution engine transformations
	//
	// Request flow: GraphQL request -> request_transform (instantiate REST request) ->
	// REST API resp -> pre_execution_transform -> execution engine ->
	// complete GraphQL field response
	//
	PreExecutionTransform *ResponseTemplate `` /* 126-byte string literal not displayed */
	SpanName              string            `protobuf:"bytes,4,opt,name=span_name,json=spanName,proto3" json:"span_name,omitempty"`
	// contains filtered or unexported fields
}

func (*RESTResolver) Descriptor deprecated

func (*RESTResolver) Descriptor() ([]byte, []int)

Deprecated: Use RESTResolver.ProtoReflect.Descriptor instead.

func (*RESTResolver) GetPreExecutionTransform

func (x *RESTResolver) GetPreExecutionTransform() *ResponseTemplate

func (*RESTResolver) GetRequestTransform

func (x *RESTResolver) GetRequestTransform() *RequestTemplate

func (*RESTResolver) GetServerUri

func (x *RESTResolver) GetServerUri() *v3.HttpUri

func (*RESTResolver) GetSpanName

func (x *RESTResolver) GetSpanName() string

func (*RESTResolver) ProtoMessage

func (*RESTResolver) ProtoMessage()

func (*RESTResolver) ProtoReflect

func (x *RESTResolver) ProtoReflect() protoreflect.Message

func (*RESTResolver) Reset

func (x *RESTResolver) Reset()

func (*RESTResolver) String

func (x *RESTResolver) String() string

type RequestTemplate

type RequestTemplate struct {

	// Use this attribute to set request headers to your REST service. It consists of a
	// map of strings to value providers. The string key determines the name of the
	// resulting header, the value provided will be the value.
	//
	// at least need ":method" and ":path"
	Headers map[string]*ValueProvider `` /* 155-byte string literal not displayed */
	// Use this attribute to set query parameters to your REST service. It consists of a
	// map of strings to value providers. The string key determines the name of the
	// query param, the provided value will be the value. This value is appended to any
	// value set to the :path header in `headers`.
	//
	// Interpolation is done in envoy rather than the control plane to prevent escaped
	// character issues. Additionally, we may be providing values not known until
	// the request is being executed (e.g., graphql parent info).
	QueryParams map[string]*ValueProvider `` /* 182-byte string literal not displayed */
	// implementation specific, gRPC will want gRPC message and struct to instantiate
	OutgoingBody *JsonValue `protobuf:"bytes,3,opt,name=outgoing_body,json=outgoingBody,proto3" json:"outgoing_body,omitempty"`
	// contains filtered or unexported fields
}

Defines a configuration for generating outgoing requests for a resolver.

func (*RequestTemplate) Descriptor deprecated

func (*RequestTemplate) Descriptor() ([]byte, []int)

Deprecated: Use RequestTemplate.ProtoReflect.Descriptor instead.

func (*RequestTemplate) GetHeaders

func (x *RequestTemplate) GetHeaders() map[string]*ValueProvider

func (*RequestTemplate) GetOutgoingBody

func (x *RequestTemplate) GetOutgoingBody() *JsonValue

func (*RequestTemplate) GetQueryParams

func (x *RequestTemplate) GetQueryParams() map[string]*ValueProvider

func (*RequestTemplate) ProtoMessage

func (*RequestTemplate) ProtoMessage()

func (*RequestTemplate) ProtoReflect

func (x *RequestTemplate) ProtoReflect() protoreflect.Message

func (*RequestTemplate) Reset

func (x *RequestTemplate) Reset()

func (*RequestTemplate) String

func (x *RequestTemplate) String() string

type Resolution

type Resolution struct {

	// Match an object type and field
	Matcher *QueryMatcher `protobuf:"bytes,1,opt,name=matcher,proto3" json:"matcher,omitempty"`
	// The resolver to use.
	Resolver *v3.TypedExtensionConfig `protobuf:"bytes,2,opt,name=resolver,proto3" json:"resolver,omitempty"`
	// contains filtered or unexported fields
}

This is the resolver map for the schema. For each Type.Field, we can define a resolver. if a field does not have resolver, the default resolver will be used. the default resolver takes the field with the same name from the parent, and uses that value to resolve the field. if a field with the same name does not exist in the parent, null will be used.

func (*Resolution) Descriptor deprecated

func (*Resolution) Descriptor() ([]byte, []int)

Deprecated: Use Resolution.ProtoReflect.Descriptor instead.

func (*Resolution) GetMatcher

func (x *Resolution) GetMatcher() *QueryMatcher

func (*Resolution) GetResolver

func (x *Resolution) GetResolver() *v3.TypedExtensionConfig

func (*Resolution) ProtoMessage

func (*Resolution) ProtoMessage()

func (*Resolution) ProtoReflect

func (x *Resolution) ProtoReflect() protoreflect.Message

func (*Resolution) Reset

func (x *Resolution) Reset()

func (*Resolution) String

func (x *Resolution) String() string

type ResponseTemplate

type ResponseTemplate struct {

	// In cases where the data to populate the graphql type is not in the
	// root object of the result, use result root to specify the path
	// of the response we should use as the root.
	// If {"a": {"b": [1,2,3]}} is the response from the api, setting resultroot as `a.b`
	// will pass on [1,2,3] to the execution engine rather than the whole api response
	ResultRoot []*PathSegment `protobuf:"bytes,1,rep,name=result_root,json=resultRoot,proto3" json:"result_root,omitempty"`
	//
	//Example:
	//“`
	//type Query {
	//getSimple: Simple
	//}
	//
	//type Simple {
	//name String
	//address String
	//}“`
	//
	//if we do `getsimple` and the response we get back from the upstream is
	//“`
	//{"data": {
	//"people":
	//{
	//"name": "John Doe",
	//"details": {
	//"address": "123 Turnip Rd"
	//}
	//}
	//}
	//}
	//“`
	//the following response transform would let the graphql execution engine correctly
	//marshal the upstream resposne into the expected graphql response:
	//`
	//responseTransform:
	//result_root:
	//segments:
	//- key: data
	//- key: people
	//setters:
	//address:
	//segments:
	//- key: details
	//- key: address
	//`yaml
	Setters map[string]*Path `` /* 155-byte string literal not displayed */
	// contains filtered or unexported fields
}

Defines a response transformation template. modify JSON response from upstream before it is processed by execution engine.

func (*ResponseTemplate) Descriptor deprecated

func (*ResponseTemplate) Descriptor() ([]byte, []int)

Deprecated: Use ResponseTemplate.ProtoReflect.Descriptor instead.

func (*ResponseTemplate) GetResultRoot

func (x *ResponseTemplate) GetResultRoot() []*PathSegment

func (*ResponseTemplate) GetSetters

func (x *ResponseTemplate) GetSetters() map[string]*Path

func (*ResponseTemplate) ProtoMessage

func (*ResponseTemplate) ProtoMessage()

func (*ResponseTemplate) ProtoReflect

func (x *ResponseTemplate) ProtoReflect() protoreflect.Message

func (*ResponseTemplate) Reset

func (x *ResponseTemplate) Reset()

func (*ResponseTemplate) String

func (x *ResponseTemplate) String() string

type ValueProvider

type ValueProvider struct {

	// Map of provider name to provider definition.
	// The name will be used to insert the provider value in the provider_template.
	Providers map[string]*ValueProvider_Provider `` /* 159-byte string literal not displayed */
	//
	//If non-empty, Inserts named providers into a template string.
	//For example, if the provider_template is '/api/{apiVersionProvider}/pet/{petIdProvider}'
	//and we have to named providers defined in `providers`, apiVersionProvider and petIdProvider, with extracted values 'v2' and '123' respectively,
	//the final resulting value will be '/api/v2/pet/123'
	//Use {PROVIDER_NAME} as the interpolation notation (even repeated) regardless of the type of the
	//provided value.
	//If an undefined PROVIDER_NAME is used in the provider_template, this will nack during configuration.
	//If this is empty, only the value of the first provider will be used as the resulting value.
	ProviderTemplate string `protobuf:"bytes,4,opt,name=provider_template,json=providerTemplate,proto3" json:"provider_template,omitempty"`
	// contains filtered or unexported fields
}

In the future we may add support for regex and subgroups

func (*ValueProvider) Descriptor deprecated

func (*ValueProvider) Descriptor() ([]byte, []int)

Deprecated: Use ValueProvider.ProtoReflect.Descriptor instead.

func (*ValueProvider) GetProviderTemplate

func (x *ValueProvider) GetProviderTemplate() string

func (*ValueProvider) GetProviders

func (x *ValueProvider) GetProviders() map[string]*ValueProvider_Provider

func (*ValueProvider) ProtoMessage

func (*ValueProvider) ProtoMessage()

func (*ValueProvider) ProtoReflect

func (x *ValueProvider) ProtoReflect() protoreflect.Message

func (*ValueProvider) Reset

func (x *ValueProvider) Reset()

func (*ValueProvider) String

func (x *ValueProvider) String() string

type ValueProvider_GraphQLArgExtraction

type ValueProvider_GraphQLArgExtraction struct {

	// The argument name to fetch. The argument value fetched
	// will have a type from the schema that we validate in envoy.
	// If the name is invalid, returns the zero-value primitive or null.
	ArgName string `protobuf:"bytes,1,opt,name=arg_name,json=argName,proto3" json:"arg_name,omitempty"`
	// Optional: fetches the value in the argument selected at this key.
	// If the key is invalid, returns the zero-value primitive or null.
	Path []*PathSegment `protobuf:"bytes,2,rep,name=path,proto3" json:"path,omitempty"`
	// If this is set to true, then a schema error will be returned to user when the graphql arg is not found.
	// Defaults to false, so schema error will not be returned to user when the graphql arg is not found.
	Required bool `protobuf:"varint,3,opt,name=required,proto3" json:"required,omitempty"`
	// contains filtered or unexported fields
}

func (*ValueProvider_GraphQLArgExtraction) Descriptor deprecated

func (*ValueProvider_GraphQLArgExtraction) Descriptor() ([]byte, []int)

Deprecated: Use ValueProvider_GraphQLArgExtraction.ProtoReflect.Descriptor instead.

func (*ValueProvider_GraphQLArgExtraction) GetArgName

func (*ValueProvider_GraphQLArgExtraction) GetPath

func (*ValueProvider_GraphQLArgExtraction) GetRequired added in v1.10.0

func (x *ValueProvider_GraphQLArgExtraction) GetRequired() bool

func (*ValueProvider_GraphQLArgExtraction) ProtoMessage

func (*ValueProvider_GraphQLArgExtraction) ProtoMessage()

func (*ValueProvider_GraphQLArgExtraction) ProtoReflect

func (*ValueProvider_GraphQLArgExtraction) Reset

func (*ValueProvider_GraphQLArgExtraction) String

type ValueProvider_GraphQLParentExtraction

type ValueProvider_GraphQLParentExtraction struct {

	// Fetches the value in the graphql parent at this key. The value will
	// always be accepted since the parent object is not strongly-typed.
	// If the key is invalid, returns null.
	Path []*PathSegment `protobuf:"bytes,1,rep,name=path,proto3" json:"path,omitempty"`
	// contains filtered or unexported fields
}

Does not do type coercion, but instead if the type does not match the expected primitive type we throw an error. In the future we may add support for type coercion.

func (*ValueProvider_GraphQLParentExtraction) Descriptor deprecated

func (*ValueProvider_GraphQLParentExtraction) Descriptor() ([]byte, []int)

Deprecated: Use ValueProvider_GraphQLParentExtraction.ProtoReflect.Descriptor instead.

func (*ValueProvider_GraphQLParentExtraction) GetPath

func (*ValueProvider_GraphQLParentExtraction) ProtoMessage

func (*ValueProvider_GraphQLParentExtraction) ProtoMessage()

func (*ValueProvider_GraphQLParentExtraction) ProtoReflect

func (*ValueProvider_GraphQLParentExtraction) Reset

func (*ValueProvider_GraphQLParentExtraction) String

type ValueProvider_Provider

type ValueProvider_Provider struct {

	// Types that are assignable to Provider:
	//	*ValueProvider_Provider_GraphqlArg
	//	*ValueProvider_Provider_TypedProvider
	//	*ValueProvider_Provider_GraphqlParent
	Provider isValueProvider_Provider_Provider `protobuf_oneof:"provider"`
	// contains filtered or unexported fields
}

func (*ValueProvider_Provider) Descriptor deprecated

func (*ValueProvider_Provider) Descriptor() ([]byte, []int)

Deprecated: Use ValueProvider_Provider.ProtoReflect.Descriptor instead.

func (*ValueProvider_Provider) GetGraphqlArg

func (*ValueProvider_Provider) GetGraphqlParent

func (*ValueProvider_Provider) GetProvider

func (m *ValueProvider_Provider) GetProvider() isValueProvider_Provider_Provider

func (*ValueProvider_Provider) GetTypedProvider

func (*ValueProvider_Provider) ProtoMessage

func (*ValueProvider_Provider) ProtoMessage()

func (*ValueProvider_Provider) ProtoReflect

func (x *ValueProvider_Provider) ProtoReflect() protoreflect.Message

func (*ValueProvider_Provider) Reset

func (x *ValueProvider_Provider) Reset()

func (*ValueProvider_Provider) String

func (x *ValueProvider_Provider) String() string

type ValueProvider_Provider_GraphqlArg

type ValueProvider_Provider_GraphqlArg struct {
	// type inferred from schema, no need to provide it.
	GraphqlArg *ValueProvider_GraphQLArgExtraction `protobuf:"bytes,1,opt,name=graphql_arg,json=graphqlArg,proto3,oneof"`
}

type ValueProvider_Provider_GraphqlParent

type ValueProvider_Provider_GraphqlParent struct {
	// Fetch value from the graphql_parent of the current field.
	GraphqlParent *ValueProvider_GraphQLParentExtraction `protobuf:"bytes,3,opt,name=graphql_parent,json=graphqlParent,proto3,oneof"`
}

type ValueProvider_Provider_TypedProvider

type ValueProvider_Provider_TypedProvider struct {
	TypedProvider *ValueProvider_TypedValueProvider `protobuf:"bytes,2,opt,name=typed_provider,json=typedProvider,proto3,oneof"`
}

type ValueProvider_TypedValueProvider

type ValueProvider_TypedValueProvider struct {

	// Type that the value will be coerced into.
	// For example if the extracted value is "9", and type is INT,
	// this value will be cast to an int type.
	Type ValueProvider_TypedValueProvider_Type `` /* 141-byte string literal not displayed */
	// Types that are assignable to ValProvider:
	//	*ValueProvider_TypedValueProvider_Header
	//	*ValueProvider_TypedValueProvider_Value
	ValProvider isValueProvider_TypedValueProvider_ValProvider `protobuf_oneof:"val_provider"`
	// contains filtered or unexported fields
}

func (*ValueProvider_TypedValueProvider) Descriptor deprecated

func (*ValueProvider_TypedValueProvider) Descriptor() ([]byte, []int)

Deprecated: Use ValueProvider_TypedValueProvider.ProtoReflect.Descriptor instead.

func (*ValueProvider_TypedValueProvider) GetHeader

func (*ValueProvider_TypedValueProvider) GetType

func (*ValueProvider_TypedValueProvider) GetValProvider

func (m *ValueProvider_TypedValueProvider) GetValProvider() isValueProvider_TypedValueProvider_ValProvider

func (*ValueProvider_TypedValueProvider) GetValue

func (*ValueProvider_TypedValueProvider) ProtoMessage

func (*ValueProvider_TypedValueProvider) ProtoMessage()

func (*ValueProvider_TypedValueProvider) ProtoReflect

func (*ValueProvider_TypedValueProvider) Reset

func (*ValueProvider_TypedValueProvider) String

type ValueProvider_TypedValueProvider_Header

type ValueProvider_TypedValueProvider_Header struct {
	// Fetches the request/response header's value. If not found, uses empty string
	Header string `protobuf:"bytes,2,opt,name=header,proto3,oneof"`
}

type ValueProvider_TypedValueProvider_Type

type ValueProvider_TypedValueProvider_Type int32

if empty, defaults to string. similar to typeUrl in other envoy config

const (
	ValueProvider_TypedValueProvider_STRING  ValueProvider_TypedValueProvider_Type = 0
	ValueProvider_TypedValueProvider_INT     ValueProvider_TypedValueProvider_Type = 1
	ValueProvider_TypedValueProvider_FLOAT   ValueProvider_TypedValueProvider_Type = 2
	ValueProvider_TypedValueProvider_BOOLEAN ValueProvider_TypedValueProvider_Type = 3
)

func (ValueProvider_TypedValueProvider_Type) Descriptor

func (ValueProvider_TypedValueProvider_Type) Enum

func (ValueProvider_TypedValueProvider_Type) EnumDescriptor deprecated

func (ValueProvider_TypedValueProvider_Type) EnumDescriptor() ([]byte, []int)

Deprecated: Use ValueProvider_TypedValueProvider_Type.Descriptor instead.

func (ValueProvider_TypedValueProvider_Type) Number

func (ValueProvider_TypedValueProvider_Type) String

func (ValueProvider_TypedValueProvider_Type) Type

type ValueProvider_TypedValueProvider_Value

type ValueProvider_TypedValueProvider_Value struct {
	// inline value, use as provided rather than extracting from another source
	Value string `protobuf:"bytes,3,opt,name=value,proto3,oneof"`
}

Jump to

Keyboard shortcuts

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