federation

package
v0.3.2 Latest Latest
Warning

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

Go to latest
Published: Oct 26, 2023 License: MIT Imports: 5 Imported by: 1

Documentation

Index

Constants

View Source
const (
	PrivatePackageName          = "grpc.federation.private"
	MessageArgumentVariableName = "__ARG__"
)

Variables

View Source
var (
	// optional grpc.federation.EnumRule enum = 70000;
	E_Enum = &file_grpc_federation_federation_proto_extTypes[4]
)

Extension fields to descriptorpb.EnumOptions.

View Source
var (
	// optional grpc.federation.EnumValueRule enum_value = 70000;
	E_EnumValue = &file_grpc_federation_federation_proto_extTypes[5]
)

Extension fields to descriptorpb.EnumValueOptions.

View Source
var (
	// optional grpc.federation.FieldRule field = 70000;
	E_Field = &file_grpc_federation_federation_proto_extTypes[3]
)

Extension fields to descriptorpb.FieldOptions.

View Source
var (
	// optional grpc.federation.MessageRule message = 70000;
	E_Message = &file_grpc_federation_federation_proto_extTypes[2]
)

Extension fields to descriptorpb.MessageOptions.

View Source
var (
	// optional grpc.federation.MethodRule method = 70000;
	E_Method = &file_grpc_federation_federation_proto_extTypes[1]
)

Extension fields to descriptorpb.MethodOptions.

View Source
var (
	// optional grpc.federation.OneofRule oneof = 70000;
	E_Oneof = &file_grpc_federation_federation_proto_extTypes[6]
)

Extension fields to descriptorpb.OneofOptions.

View Source
var (
	// optional grpc.federation.ServiceRule service = 70000;
	E_Service = &file_grpc_federation_federation_proto_extTypes[0]
)

Extension fields to descriptorpb.ServiceOptions.

View Source
var File_grpc_federation_federation_proto protoreflect.FileDescriptor

Functions

This section is empty.

Types

type Argument

type Argument struct {

	// name of the message argument.
	// Use this name to refer to the message argument.
	// For example, if `foo` is specified as the name, it is referenced by `$.foo`.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// by used to refer to a name or message argument defined in a MessageRule, use `$.` to refer to the message argument.
	// Use CEL (https://github.com/google/cel-spec) to evaluate the expression.
	// Variables are already defined in MessageRule can be used.
	By *string `protobuf:"bytes,2,opt,name=by,proto3,oneof" json:"by,omitempty"`
	// inline like by, it refers to the specified value and expands all fields beyond it.
	// For this reason, the referenced value must always be of message type.
	Inline *string `protobuf:"bytes,3,opt,name=inline,proto3,oneof" json:"inline,omitempty"`
	// double literal value.
	Double *float64 `protobuf:"fixed64,4,opt,name=double,proto3,oneof" json:"double,omitempty"`
	// repeated double literal values.
	Doubles []float64 `protobuf:"fixed64,5,rep,packed,name=doubles,proto3" json:"doubles,omitempty"`
	// float literal value.
	Float *float32 `protobuf:"fixed32,6,opt,name=float,proto3,oneof" json:"float,omitempty"`
	// repeated float literal values.
	Floats []float32 `protobuf:"fixed32,7,rep,packed,name=floats,proto3" json:"floats,omitempty"`
	// int32 literal value.
	Int32 *int32 `protobuf:"varint,8,opt,name=int32,proto3,oneof" json:"int32,omitempty"`
	// repeated int32 literal values.
	Int32S []int32 `protobuf:"varint,9,rep,packed,name=int32s,proto3" json:"int32s,omitempty"`
	// int64 literal value.
	Int64 *int64 `protobuf:"varint,10,opt,name=int64,proto3,oneof" json:"int64,omitempty"`
	// repeated int64 literal values.
	Int64S []int64 `protobuf:"varint,11,rep,packed,name=int64s,proto3" json:"int64s,omitempty"`
	// uint32 literal value.
	Uint32 *uint32 `protobuf:"varint,12,opt,name=uint32,proto3,oneof" json:"uint32,omitempty"`
	// repeated uint32 literal values.
	Uint32S []uint32 `protobuf:"varint,13,rep,packed,name=uint32s,proto3" json:"uint32s,omitempty"`
	// uint64 literal value.
	Uint64 *uint64 `protobuf:"varint,14,opt,name=uint64,proto3,oneof" json:"uint64,omitempty"`
	// repeated uint64 literal values.
	Uint64S []uint64 `protobuf:"varint,15,rep,packed,name=uint64s,proto3" json:"uint64s,omitempty"`
	// sint32 literal value.
	Sint32 *int32 `protobuf:"zigzag32,16,opt,name=sint32,proto3,oneof" json:"sint32,omitempty"`
	// repeated sint32 literal values.
	Sint32S []int32 `protobuf:"zigzag32,17,rep,packed,name=sint32s,proto3" json:"sint32s,omitempty"`
	// sint64 literal value.
	Sint64 *int64 `protobuf:"zigzag64,18,opt,name=sint64,proto3,oneof" json:"sint64,omitempty"`
	// repeated sint64 literal values.
	Sint64S []int64 `protobuf:"zigzag64,19,rep,packed,name=sint64s,proto3" json:"sint64s,omitempty"`
	// fixed32 literal value.
	Fixed32 *uint32 `protobuf:"fixed32,20,opt,name=fixed32,proto3,oneof" json:"fixed32,omitempty"`
	// repeated fixed32 literal values.
	Fixed32S []uint32 `protobuf:"fixed32,21,rep,packed,name=fixed32s,proto3" json:"fixed32s,omitempty"`
	// fixed64 literal value.
	Fixed64 *uint64 `protobuf:"fixed64,22,opt,name=fixed64,proto3,oneof" json:"fixed64,omitempty"`
	// repeated fixed64 literal values.
	Fixed64S []uint64 `protobuf:"fixed64,23,rep,packed,name=fixed64s,proto3" json:"fixed64s,omitempty"`
	// sfixed32 literal value.
	Sfixed32 *int32 `protobuf:"fixed32,24,opt,name=sfixed32,proto3,oneof" json:"sfixed32,omitempty"`
	// repeated sfixed32 literal values.
	Sfixed32S []int32 `protobuf:"fixed32,25,rep,packed,name=sfixed32s,proto3" json:"sfixed32s,omitempty"`
	// sfixed64 literal value.
	Sfixed64 *int64 `protobuf:"fixed64,26,opt,name=sfixed64,proto3,oneof" json:"sfixed64,omitempty"`
	// repeated sfixed64 literal values.
	Sfixed64S []int64 `protobuf:"fixed64,27,rep,packed,name=sfixed64s,proto3" json:"sfixed64s,omitempty"`
	// bool literal value.
	Bool *bool `protobuf:"varint,28,opt,name=bool,proto3,oneof" json:"bool,omitempty"`
	// repeated bool literal values.
	Bools []bool `protobuf:"varint,29,rep,packed,name=bools,proto3" json:"bools,omitempty"`
	// string literal value.
	String_ *string `protobuf:"bytes,30,opt,name=string,proto3,oneof" json:"string,omitempty"`
	// repeated string literal values.
	Strings []string `protobuf:"bytes,31,rep,name=strings,proto3" json:"strings,omitempty"`
	// bytes literal value.
	ByteString []byte `protobuf:"bytes,32,opt,name=byte_string,json=byteString,proto3,oneof" json:"byte_string,omitempty"`
	// repeated bytes literal values.
	ByteStrings [][]byte `protobuf:"bytes,33,rep,name=byte_strings,json=byteStrings,proto3" json:"byte_strings,omitempty"`
	// message literal value.
	Message *MessageValue `protobuf:"bytes,34,opt,name=message,proto3,oneof" json:"message,omitempty"`
	// repeated message literal values.
	Messages []*MessageValue `protobuf:"bytes,35,rep,name=messages,proto3" json:"messages,omitempty"`
	// enum literal value.
	Enum *string `protobuf:"bytes,36,opt,name=enum,proto3,oneof" json:"enum,omitempty"`
	// repeated enum literal values.
	Enums []string `protobuf:"bytes,37,rep,name=enums,proto3" json:"enums,omitempty"`
	// env literal value.
	Env *string `protobuf:"bytes,38,opt,name=env,proto3,oneof" json:"env,omitempty"`
	// repeated env literal values.
	Envs []string `protobuf:"bytes,39,rep,name=envs,proto3" json:"envs,omitempty"`
	// contains filtered or unexported fields
}

Argument define message argument.

func (*Argument) Descriptor deprecated

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

Deprecated: Use Argument.ProtoReflect.Descriptor instead.

func (*Argument) GetBool

func (x *Argument) GetBool() bool

func (*Argument) GetBools

func (x *Argument) GetBools() []bool

func (*Argument) GetBy

func (x *Argument) GetBy() string

func (*Argument) GetByteString

func (x *Argument) GetByteString() []byte

func (*Argument) GetByteStrings

func (x *Argument) GetByteStrings() [][]byte

func (*Argument) GetDouble

func (x *Argument) GetDouble() float64

func (*Argument) GetDoubles

func (x *Argument) GetDoubles() []float64

func (*Argument) GetEnum

func (x *Argument) GetEnum() string

func (*Argument) GetEnums

func (x *Argument) GetEnums() []string

func (*Argument) GetEnv

func (x *Argument) GetEnv() string

func (*Argument) GetEnvs

func (x *Argument) GetEnvs() []string

func (*Argument) GetFixed32

func (x *Argument) GetFixed32() uint32

func (*Argument) GetFixed32S

func (x *Argument) GetFixed32S() []uint32

func (*Argument) GetFixed64

func (x *Argument) GetFixed64() uint64

func (*Argument) GetFixed64S

func (x *Argument) GetFixed64S() []uint64

func (*Argument) GetFloat

func (x *Argument) GetFloat() float32

func (*Argument) GetFloats

func (x *Argument) GetFloats() []float32

func (*Argument) GetInline

func (x *Argument) GetInline() string

func (*Argument) GetInt32

func (x *Argument) GetInt32() int32

func (*Argument) GetInt32S

func (x *Argument) GetInt32S() []int32

func (*Argument) GetInt64

func (x *Argument) GetInt64() int64

func (*Argument) GetInt64S

func (x *Argument) GetInt64S() []int64

func (*Argument) GetMessage

func (x *Argument) GetMessage() *MessageValue

func (*Argument) GetMessages

func (x *Argument) GetMessages() []*MessageValue

func (*Argument) GetName

func (x *Argument) GetName() string

func (*Argument) GetSfixed32

func (x *Argument) GetSfixed32() int32

func (*Argument) GetSfixed32S

func (x *Argument) GetSfixed32S() []int32

func (*Argument) GetSfixed64

func (x *Argument) GetSfixed64() int64

func (*Argument) GetSfixed64S

func (x *Argument) GetSfixed64S() []int64

func (*Argument) GetSint32

func (x *Argument) GetSint32() int32

func (*Argument) GetSint32S

func (x *Argument) GetSint32S() []int32

func (*Argument) GetSint64

func (x *Argument) GetSint64() int64

func (*Argument) GetSint64S

func (x *Argument) GetSint64S() []int64

func (*Argument) GetString_

func (x *Argument) GetString_() string

func (*Argument) GetStrings

func (x *Argument) GetStrings() []string

func (*Argument) GetUint32

func (x *Argument) GetUint32() uint32

func (*Argument) GetUint32S

func (x *Argument) GetUint32S() []uint32

func (*Argument) GetUint64

func (x *Argument) GetUint64() uint64

func (*Argument) GetUint64S

func (x *Argument) GetUint64S() []uint64

func (*Argument) ProtoMessage

func (*Argument) ProtoMessage()

func (*Argument) ProtoReflect

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

func (*Argument) Reset

func (x *Argument) Reset()

func (*Argument) String

func (x *Argument) String() string

type EnumRule

type EnumRule struct {

	// alias mapping between enums defined in other packages and enums defined on the federation service side.
	// The alias is the FQDN ( <package-name>.<enum-name> ) to the enum.
	// If this definition exists, type conversion is automatically performed before the enum value assignment operation.
	// If a enum with this option has a value that is not present in the enum specified by alias, and the alias option is not specified for that value, an error is occurred.
	Alias *string `protobuf:"bytes,1,opt,name=alias,proto3,oneof" json:"alias,omitempty"`
	// contains filtered or unexported fields
}

func (*EnumRule) Descriptor deprecated

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

Deprecated: Use EnumRule.ProtoReflect.Descriptor instead.

func (*EnumRule) GetAlias

func (x *EnumRule) GetAlias() string

func (*EnumRule) ProtoMessage

func (*EnumRule) ProtoMessage()

func (*EnumRule) ProtoReflect

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

func (*EnumRule) Reset

func (x *EnumRule) Reset()

func (*EnumRule) String

func (x *EnumRule) String() string

type EnumValueRule

type EnumValueRule struct {

	// specifies the default value of the enum.
	// All values other than those specified in alias will be default values.
	Default *bool `protobuf:"varint,1,opt,name=default,proto3,oneof" json:"default,omitempty"`
	// alias can be used when alias is specified in grpc.federation.enum option,
	// and specifies the value name to be referenced among the enums specified in alias of enum option.
	// multiple value names can be specified for alias.
	Alias []string `protobuf:"bytes,2,rep,name=alias,proto3" json:"alias,omitempty"`
	// contains filtered or unexported fields
}

func (*EnumValueRule) Descriptor deprecated

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

Deprecated: Use EnumValueRule.ProtoReflect.Descriptor instead.

func (*EnumValueRule) GetAlias

func (x *EnumValueRule) GetAlias() []string

func (*EnumValueRule) GetDefault

func (x *EnumValueRule) GetDefault() bool

func (*EnumValueRule) ProtoMessage

func (*EnumValueRule) ProtoMessage()

func (*EnumValueRule) ProtoReflect

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

func (*EnumValueRule) Reset

func (x *EnumValueRule) Reset()

func (*EnumValueRule) String

func (x *EnumValueRule) String() string

type FieldOneof added in v0.3.0

type FieldOneof struct {

	// cond specify either `expr` or `default`. Only one `default` can be set per oneof.
	//
	// Types that are assignable to Cond:
	//
	//	*FieldOneof_Expr
	//	*FieldOneof_Default
	Cond isFieldOneof_Cond `protobuf_oneof:"cond"`
	// messages defines a list of dependent messages that must be retrieved to compose a message.
	Messages []*Message `protobuf:"bytes,3,rep,name=messages,proto3" json:"messages,omitempty"`
	// by used to refer to a name or message argument defined in a MessageRule, use `$.` to refer to the message argument.
	// Use CEL (https://github.com/google/cel-spec) to evaluate the expression.
	// Variables are already defined in MessageRule and FieldOneOf's messages field can be used.
	By string `protobuf:"bytes,4,opt,name=by,proto3" json:"by,omitempty"`
	// contains filtered or unexported fields
}

FieldOneof evaluate "messages" or other field only if expr is true and assign to the oneof field. This feature only available in oneof.

func (*FieldOneof) Descriptor deprecated added in v0.3.0

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

Deprecated: Use FieldOneof.ProtoReflect.Descriptor instead.

func (*FieldOneof) GetBy added in v0.3.0

func (x *FieldOneof) GetBy() string

func (*FieldOneof) GetCond added in v0.3.0

func (m *FieldOneof) GetCond() isFieldOneof_Cond

func (*FieldOneof) GetDefault added in v0.3.0

func (x *FieldOneof) GetDefault() bool

func (*FieldOneof) GetExpr added in v0.3.0

func (x *FieldOneof) GetExpr() string

func (*FieldOneof) GetMessages added in v0.3.0

func (x *FieldOneof) GetMessages() []*Message

func (*FieldOneof) ProtoMessage added in v0.3.0

func (*FieldOneof) ProtoMessage()

func (*FieldOneof) ProtoReflect added in v0.3.0

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

func (*FieldOneof) Reset added in v0.3.0

func (x *FieldOneof) Reset()

func (*FieldOneof) String added in v0.3.0

func (x *FieldOneof) String() string

type FieldOneof_Default added in v0.3.0

type FieldOneof_Default struct {
	// default used to assign a value when none of the other fields match any of the specified expressions.
	// Only one value can be defined per oneof.
	Default bool `protobuf:"varint,2,opt,name=default,proto3,oneof"`
}

type FieldOneof_Expr added in v0.3.0

type FieldOneof_Expr struct {
	// expr describes the condition to be assigned to field.
	// The return value must be of type bool.
	// Use CEL (https://github.com/google/cel-spec) to evaluate the expression.
	// Variables are already defined in MessageRule can be used.
	Expr string `protobuf:"bytes,1,opt,name=expr,proto3,oneof"`
}

type FieldRule

type FieldRule struct {

	// If custom_resolver is true, the field binding process is to be implemented in Go.
	// If there are any values retrieved by grpc.federation.message option, they are passed as arguments for custom resolver.
	CustomResolver *bool `protobuf:"varint,1,opt,name=custom_resolver,json=customResolver,proto3,oneof" json:"custom_resolver,omitempty"`
	// by used to refer to a name or message argument defined in a MessageRule, use `$.` to refer to the message argument.
	// Use CEL (https://github.com/google/cel-spec) to evaluate the expression.
	// Variables are already defined in MessageRule can be used.
	By *string `protobuf:"bytes,2,opt,name=by,proto3,oneof" json:"by,omitempty"`
	// alias can be used when alias is specified in grpc.federation.message option,
	// and specifies the field name to be referenced among the messages specified in alias of message option.
	// If the specified field has the same type or can be converted automatically, its value is assigned.
	Alias *string `protobuf:"bytes,3,opt,name=alias,proto3,oneof" json:"alias,omitempty"`
	// double literal value.
	Double *float64 `protobuf:"fixed64,4,opt,name=double,proto3,oneof" json:"double,omitempty"`
	// repeated double literal values.
	Doubles []float64 `protobuf:"fixed64,5,rep,packed,name=doubles,proto3" json:"doubles,omitempty"`
	// float literal value.
	Float *float32 `protobuf:"fixed32,6,opt,name=float,proto3,oneof" json:"float,omitempty"`
	// repeated float literal values.
	Floats []float32 `protobuf:"fixed32,7,rep,packed,name=floats,proto3" json:"floats,omitempty"`
	// int32 literal value.
	Int32 *int32 `protobuf:"varint,8,opt,name=int32,proto3,oneof" json:"int32,omitempty"`
	// repeated int32 literal values.
	Int32S []int32 `protobuf:"varint,9,rep,packed,name=int32s,proto3" json:"int32s,omitempty"`
	// int64 literal value.
	Int64 *int64 `protobuf:"varint,10,opt,name=int64,proto3,oneof" json:"int64,omitempty"`
	// repeated int64 literal values.
	Int64S []int64 `protobuf:"varint,11,rep,packed,name=int64s,proto3" json:"int64s,omitempty"`
	// uint32 literal value.
	Uint32 *uint32 `protobuf:"varint,12,opt,name=uint32,proto3,oneof" json:"uint32,omitempty"`
	// repeated uint32 literal values.
	Uint32S []uint32 `protobuf:"varint,13,rep,packed,name=uint32s,proto3" json:"uint32s,omitempty"`
	// uint64 literal value.
	Uint64 *uint64 `protobuf:"varint,14,opt,name=uint64,proto3,oneof" json:"uint64,omitempty"`
	// repeated uint64 literal values.
	Uint64S []uint64 `protobuf:"varint,15,rep,packed,name=uint64s,proto3" json:"uint64s,omitempty"`
	// sint32 literal value.
	Sint32 *int32 `protobuf:"zigzag32,16,opt,name=sint32,proto3,oneof" json:"sint32,omitempty"`
	// repeated sint32 literal values.
	Sint32S []int32 `protobuf:"zigzag32,17,rep,packed,name=sint32s,proto3" json:"sint32s,omitempty"`
	// sint64 literal value.
	Sint64 *int64 `protobuf:"zigzag64,18,opt,name=sint64,proto3,oneof" json:"sint64,omitempty"`
	// repeated sint64 literal values.
	Sint64S []int64 `protobuf:"zigzag64,19,rep,packed,name=sint64s,proto3" json:"sint64s,omitempty"`
	// fixed32 literal value.
	Fixed32 *uint32 `protobuf:"fixed32,20,opt,name=fixed32,proto3,oneof" json:"fixed32,omitempty"`
	// repeated fixed32 literal values.
	Fixed32S []uint32 `protobuf:"fixed32,21,rep,packed,name=fixed32s,proto3" json:"fixed32s,omitempty"`
	// fixed64 literal value.
	Fixed64 *uint64 `protobuf:"fixed64,22,opt,name=fixed64,proto3,oneof" json:"fixed64,omitempty"`
	// repeated fixed64 literal values.
	Fixed64S []uint64 `protobuf:"fixed64,23,rep,packed,name=fixed64s,proto3" json:"fixed64s,omitempty"`
	// sfixed32 literal value.
	Sfixed32 *int32 `protobuf:"fixed32,24,opt,name=sfixed32,proto3,oneof" json:"sfixed32,omitempty"`
	// repeated sfixed32 literal values.
	Sfixed32S []int32 `protobuf:"fixed32,25,rep,packed,name=sfixed32s,proto3" json:"sfixed32s,omitempty"`
	// sfixed64 literal value.
	Sfixed64 *int64 `protobuf:"fixed64,26,opt,name=sfixed64,proto3,oneof" json:"sfixed64,omitempty"`
	// repeated sfixed64 literal values.
	Sfixed64S []int64 `protobuf:"fixed64,27,rep,packed,name=sfixed64s,proto3" json:"sfixed64s,omitempty"`
	// bool literal value.
	Bool *bool `protobuf:"varint,28,opt,name=bool,proto3,oneof" json:"bool,omitempty"`
	// repeated bool literal values.
	Bools []bool `protobuf:"varint,29,rep,packed,name=bools,proto3" json:"bools,omitempty"`
	// string literal value.
	String_ *string `protobuf:"bytes,30,opt,name=string,proto3,oneof" json:"string,omitempty"`
	// repeated string literal values.
	Strings []string `protobuf:"bytes,31,rep,name=strings,proto3" json:"strings,omitempty"`
	// bytes literal value.
	ByteString []byte `protobuf:"bytes,32,opt,name=byte_string,json=byteString,proto3,oneof" json:"byte_string,omitempty"`
	// repeated bytes literal values.
	ByteStrings [][]byte `protobuf:"bytes,33,rep,name=byte_strings,json=byteStrings,proto3" json:"byte_strings,omitempty"`
	// message literal value.
	Message *MessageValue `protobuf:"bytes,34,opt,name=message,proto3,oneof" json:"message,omitempty"`
	// repeated message literal values.
	Messages []*MessageValue `protobuf:"bytes,35,rep,name=messages,proto3" json:"messages,omitempty"`
	// enum literal value.
	Enum *string `protobuf:"bytes,36,opt,name=enum,proto3,oneof" json:"enum,omitempty"`
	// repeated enum literal values.
	Enums []string `protobuf:"bytes,37,rep,name=enums,proto3" json:"enums,omitempty"`
	// env literal value.
	Env *string `protobuf:"bytes,38,opt,name=env,proto3,oneof" json:"env,omitempty"`
	// repeated env literal values.
	Envs []string `protobuf:"bytes,39,rep,name=envs,proto3" json:"envs,omitempty"`
	// use to evaluate any one of fields. this field only available in oneof.
	Oneof *FieldOneof `protobuf:"bytes,40,opt,name=oneof,proto3" json:"oneof,omitempty"`
	// contains filtered or unexported fields
}

FieldRule define GRPC Federation rules for the field of message.

func (*FieldRule) Descriptor deprecated

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

Deprecated: Use FieldRule.ProtoReflect.Descriptor instead.

func (*FieldRule) GetAlias

func (x *FieldRule) GetAlias() string

func (*FieldRule) GetBool

func (x *FieldRule) GetBool() bool

func (*FieldRule) GetBools

func (x *FieldRule) GetBools() []bool

func (*FieldRule) GetBy

func (x *FieldRule) GetBy() string

func (*FieldRule) GetByteString

func (x *FieldRule) GetByteString() []byte

func (*FieldRule) GetByteStrings

func (x *FieldRule) GetByteStrings() [][]byte

func (*FieldRule) GetCustomResolver

func (x *FieldRule) GetCustomResolver() bool

func (*FieldRule) GetDouble

func (x *FieldRule) GetDouble() float64

func (*FieldRule) GetDoubles

func (x *FieldRule) GetDoubles() []float64

func (*FieldRule) GetEnum

func (x *FieldRule) GetEnum() string

func (*FieldRule) GetEnums

func (x *FieldRule) GetEnums() []string

func (*FieldRule) GetEnv

func (x *FieldRule) GetEnv() string

func (*FieldRule) GetEnvs

func (x *FieldRule) GetEnvs() []string

func (*FieldRule) GetFixed32

func (x *FieldRule) GetFixed32() uint32

func (*FieldRule) GetFixed32S

func (x *FieldRule) GetFixed32S() []uint32

func (*FieldRule) GetFixed64

func (x *FieldRule) GetFixed64() uint64

func (*FieldRule) GetFixed64S

func (x *FieldRule) GetFixed64S() []uint64

func (*FieldRule) GetFloat

func (x *FieldRule) GetFloat() float32

func (*FieldRule) GetFloats

func (x *FieldRule) GetFloats() []float32

func (*FieldRule) GetInt32

func (x *FieldRule) GetInt32() int32

func (*FieldRule) GetInt32S

func (x *FieldRule) GetInt32S() []int32

func (*FieldRule) GetInt64

func (x *FieldRule) GetInt64() int64

func (*FieldRule) GetInt64S

func (x *FieldRule) GetInt64S() []int64

func (*FieldRule) GetMessage

func (x *FieldRule) GetMessage() *MessageValue

func (*FieldRule) GetMessages

func (x *FieldRule) GetMessages() []*MessageValue

func (*FieldRule) GetOneof added in v0.3.0

func (x *FieldRule) GetOneof() *FieldOneof

func (*FieldRule) GetSfixed32

func (x *FieldRule) GetSfixed32() int32

func (*FieldRule) GetSfixed32S

func (x *FieldRule) GetSfixed32S() []int32

func (*FieldRule) GetSfixed64

func (x *FieldRule) GetSfixed64() int64

func (*FieldRule) GetSfixed64S

func (x *FieldRule) GetSfixed64S() []int64

func (*FieldRule) GetSint32

func (x *FieldRule) GetSint32() int32

func (*FieldRule) GetSint32S

func (x *FieldRule) GetSint32S() []int32

func (*FieldRule) GetSint64

func (x *FieldRule) GetSint64() int64

func (*FieldRule) GetSint64S

func (x *FieldRule) GetSint64S() []int64

func (*FieldRule) GetString_

func (x *FieldRule) GetString_() string

func (*FieldRule) GetStrings

func (x *FieldRule) GetStrings() []string

func (*FieldRule) GetUint32

func (x *FieldRule) GetUint32() uint32

func (*FieldRule) GetUint32S

func (x *FieldRule) GetUint32S() []uint32

func (*FieldRule) GetUint64

func (x *FieldRule) GetUint64() uint64

func (*FieldRule) GetUint64S

func (x *FieldRule) GetUint64S() []uint64

func (*FieldRule) ProtoMessage

func (*FieldRule) ProtoMessage()

func (*FieldRule) ProtoReflect

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

func (*FieldRule) Reset

func (x *FieldRule) Reset()

func (*FieldRule) String

func (x *FieldRule) String() string

type Message

type Message struct {

	// name specify a unique name for the dependent message.
	Name *string `protobuf:"bytes,1,opt,name=name,proto3,oneof" json:"name,omitempty"`
	// message specify the message to be referred to by FQDN. format is `<package-name>.<message-name>`.
	// <package-name> can be omitted when referring to messages in the same package.
	Message string `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
	// args specify the parameters needed to retrieve the message. This is called the message argument.
	Args []*Argument `protobuf:"bytes,3,rep,name=args,proto3" json:"args,omitempty"`
	// autobind the value of a field with the same name and type as the field name of this message is automatically assigned to the field value in the message.
	// If multiple autobinds are used at the same message,
	// you must explicitly use the `grpc.federation.field` option to do the binding yourself, since duplicate field names cannot be correctly determined as one.
	Autobind *bool `protobuf:"varint,4,opt,name=autobind,proto3,oneof" json:"autobind,omitempty"`
	// contains filtered or unexported fields
}

Message define dependent message.

func (*Message) Descriptor deprecated

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

Deprecated: Use Message.ProtoReflect.Descriptor instead.

func (*Message) GetArgs

func (x *Message) GetArgs() []*Argument

func (*Message) GetAutobind

func (x *Message) GetAutobind() bool

func (*Message) GetMessage

func (x *Message) GetMessage() string

func (*Message) GetName

func (x *Message) GetName() string

func (*Message) ProtoMessage

func (*Message) ProtoMessage()

func (*Message) ProtoReflect

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

func (*Message) Reset

func (x *Message) Reset()

func (*Message) String

func (x *Message) String() string

type MessageFieldValue

type MessageFieldValue struct {
	Field string `protobuf:"bytes,1,opt,name=field,proto3" json:"field,omitempty"`
	// double literal value.
	Double *float64 `protobuf:"fixed64,3,opt,name=double,proto3,oneof" json:"double,omitempty"`
	// repeated double literal values.
	Doubles []float64 `protobuf:"fixed64,4,rep,packed,name=doubles,proto3" json:"doubles,omitempty"`
	// float literal value.
	Float *float32 `protobuf:"fixed32,5,opt,name=float,proto3,oneof" json:"float,omitempty"`
	// repeated float literal values.
	Floats []float32 `protobuf:"fixed32,6,rep,packed,name=floats,proto3" json:"floats,omitempty"`
	// int32 literal value.
	Int32 *int32 `protobuf:"varint,7,opt,name=int32,proto3,oneof" json:"int32,omitempty"`
	// repeated int32 literal values.
	Int32S []int32 `protobuf:"varint,8,rep,packed,name=int32s,proto3" json:"int32s,omitempty"`
	// int64 literal value.
	Int64 *int64 `protobuf:"varint,9,opt,name=int64,proto3,oneof" json:"int64,omitempty"`
	// repeated int64 literal values.
	Int64S []int64 `protobuf:"varint,10,rep,packed,name=int64s,proto3" json:"int64s,omitempty"`
	// uint32 literal value.
	Uint32 *uint32 `protobuf:"varint,11,opt,name=uint32,proto3,oneof" json:"uint32,omitempty"`
	// repeated uint32 literal values.
	Uint32S []uint32 `protobuf:"varint,12,rep,packed,name=uint32s,proto3" json:"uint32s,omitempty"`
	// uint64 literal value.
	Uint64 *uint64 `protobuf:"varint,13,opt,name=uint64,proto3,oneof" json:"uint64,omitempty"`
	// repeated uint64 literal values.
	Uint64S []uint64 `protobuf:"varint,14,rep,packed,name=uint64s,proto3" json:"uint64s,omitempty"`
	// sint32 literal value.
	Sint32 *int32 `protobuf:"zigzag32,15,opt,name=sint32,proto3,oneof" json:"sint32,omitempty"`
	// repeated sint32 literal values.
	Sint32S []int32 `protobuf:"zigzag32,16,rep,packed,name=sint32s,proto3" json:"sint32s,omitempty"`
	// sint64 literal value.
	Sint64 *int64 `protobuf:"zigzag64,17,opt,name=sint64,proto3,oneof" json:"sint64,omitempty"`
	// repeated sint64 literal values.
	Sint64S []int64 `protobuf:"zigzag64,18,rep,packed,name=sint64s,proto3" json:"sint64s,omitempty"`
	// fixed32 literal value.
	Fixed32 *uint32 `protobuf:"fixed32,19,opt,name=fixed32,proto3,oneof" json:"fixed32,omitempty"`
	// repeated fixed32 literal values.
	Fixed32S []uint32 `protobuf:"fixed32,20,rep,packed,name=fixed32s,proto3" json:"fixed32s,omitempty"`
	// fixed64 literal value.
	Fixed64 *uint64 `protobuf:"fixed64,21,opt,name=fixed64,proto3,oneof" json:"fixed64,omitempty"`
	// repeated fixed64 literal values.
	Fixed64S []uint64 `protobuf:"fixed64,22,rep,packed,name=fixed64s,proto3" json:"fixed64s,omitempty"`
	// sfixed32 literal value.
	Sfixed32 *int32 `protobuf:"fixed32,23,opt,name=sfixed32,proto3,oneof" json:"sfixed32,omitempty"`
	// repeated sfixed32 literal values.
	Sfixed32S []int32 `protobuf:"fixed32,24,rep,packed,name=sfixed32s,proto3" json:"sfixed32s,omitempty"`
	// sfixed64 literal value.
	Sfixed64 *int64 `protobuf:"fixed64,25,opt,name=sfixed64,proto3,oneof" json:"sfixed64,omitempty"`
	// repeated sfixed64 literal values.
	Sfixed64S []int64 `protobuf:"fixed64,26,rep,packed,name=sfixed64s,proto3" json:"sfixed64s,omitempty"`
	// bool literal value.
	Bool *bool `protobuf:"varint,27,opt,name=bool,proto3,oneof" json:"bool,omitempty"`
	// repeated bool literal values.
	Bools []bool `protobuf:"varint,28,rep,packed,name=bools,proto3" json:"bools,omitempty"`
	// string literal value.
	String_ *string `protobuf:"bytes,29,opt,name=string,proto3,oneof" json:"string,omitempty"`
	// repeated string literal values.
	Strings []string `protobuf:"bytes,30,rep,name=strings,proto3" json:"strings,omitempty"`
	// bytes literal value.
	ByteString []byte `protobuf:"bytes,31,opt,name=byte_string,json=byteString,proto3,oneof" json:"byte_string,omitempty"`
	// repeated bytes literal values.
	ByteStrings [][]byte `protobuf:"bytes,32,rep,name=byte_strings,json=byteStrings,proto3" json:"byte_strings,omitempty"`
	// message literal value.
	Message *MessageValue `protobuf:"bytes,33,opt,name=message,proto3,oneof" json:"message,omitempty"`
	// repeated message literal values.
	Messages []*MessageValue `protobuf:"bytes,34,rep,name=messages,proto3" json:"messages,omitempty"`
	// enum literal value.
	Enum *string `protobuf:"bytes,35,opt,name=enum,proto3,oneof" json:"enum,omitempty"`
	// repeated enum literal values.
	Enums []string `protobuf:"bytes,36,rep,name=enums,proto3" json:"enums,omitempty"`
	// env literal value.
	Env *string `protobuf:"bytes,37,opt,name=env,proto3,oneof" json:"env,omitempty"`
	// repeated env literal values.
	Envs []string `protobuf:"bytes,38,rep,name=envs,proto3" json:"envs,omitempty"`
	// contains filtered or unexported fields
}

MessageFieldValue represents message's field.

func (*MessageFieldValue) Descriptor deprecated

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

Deprecated: Use MessageFieldValue.ProtoReflect.Descriptor instead.

func (*MessageFieldValue) GetBool

func (x *MessageFieldValue) GetBool() bool

func (*MessageFieldValue) GetBools

func (x *MessageFieldValue) GetBools() []bool

func (*MessageFieldValue) GetByteString

func (x *MessageFieldValue) GetByteString() []byte

func (*MessageFieldValue) GetByteStrings

func (x *MessageFieldValue) GetByteStrings() [][]byte

func (*MessageFieldValue) GetDouble

func (x *MessageFieldValue) GetDouble() float64

func (*MessageFieldValue) GetDoubles

func (x *MessageFieldValue) GetDoubles() []float64

func (*MessageFieldValue) GetEnum

func (x *MessageFieldValue) GetEnum() string

func (*MessageFieldValue) GetEnums

func (x *MessageFieldValue) GetEnums() []string

func (*MessageFieldValue) GetEnv

func (x *MessageFieldValue) GetEnv() string

func (*MessageFieldValue) GetEnvs

func (x *MessageFieldValue) GetEnvs() []string

func (*MessageFieldValue) GetField

func (x *MessageFieldValue) GetField() string

func (*MessageFieldValue) GetFixed32

func (x *MessageFieldValue) GetFixed32() uint32

func (*MessageFieldValue) GetFixed32S

func (x *MessageFieldValue) GetFixed32S() []uint32

func (*MessageFieldValue) GetFixed64

func (x *MessageFieldValue) GetFixed64() uint64

func (*MessageFieldValue) GetFixed64S

func (x *MessageFieldValue) GetFixed64S() []uint64

func (*MessageFieldValue) GetFloat

func (x *MessageFieldValue) GetFloat() float32

func (*MessageFieldValue) GetFloats

func (x *MessageFieldValue) GetFloats() []float32

func (*MessageFieldValue) GetInt32

func (x *MessageFieldValue) GetInt32() int32

func (*MessageFieldValue) GetInt32S

func (x *MessageFieldValue) GetInt32S() []int32

func (*MessageFieldValue) GetInt64

func (x *MessageFieldValue) GetInt64() int64

func (*MessageFieldValue) GetInt64S

func (x *MessageFieldValue) GetInt64S() []int64

func (*MessageFieldValue) GetMessage

func (x *MessageFieldValue) GetMessage() *MessageValue

func (*MessageFieldValue) GetMessages

func (x *MessageFieldValue) GetMessages() []*MessageValue

func (*MessageFieldValue) GetSfixed32

func (x *MessageFieldValue) GetSfixed32() int32

func (*MessageFieldValue) GetSfixed32S

func (x *MessageFieldValue) GetSfixed32S() []int32

func (*MessageFieldValue) GetSfixed64

func (x *MessageFieldValue) GetSfixed64() int64

func (*MessageFieldValue) GetSfixed64S

func (x *MessageFieldValue) GetSfixed64S() []int64

func (*MessageFieldValue) GetSint32

func (x *MessageFieldValue) GetSint32() int32

func (*MessageFieldValue) GetSint32S

func (x *MessageFieldValue) GetSint32S() []int32

func (*MessageFieldValue) GetSint64

func (x *MessageFieldValue) GetSint64() int64

func (*MessageFieldValue) GetSint64S

func (x *MessageFieldValue) GetSint64S() []int64

func (*MessageFieldValue) GetString_

func (x *MessageFieldValue) GetString_() string

func (*MessageFieldValue) GetStrings

func (x *MessageFieldValue) GetStrings() []string

func (*MessageFieldValue) GetUint32

func (x *MessageFieldValue) GetUint32() uint32

func (*MessageFieldValue) GetUint32S

func (x *MessageFieldValue) GetUint32S() []uint32

func (*MessageFieldValue) GetUint64

func (x *MessageFieldValue) GetUint64() uint64

func (*MessageFieldValue) GetUint64S

func (x *MessageFieldValue) GetUint64S() []uint64

func (*MessageFieldValue) ProtoMessage

func (*MessageFieldValue) ProtoMessage()

func (*MessageFieldValue) ProtoReflect

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

func (*MessageFieldValue) Reset

func (x *MessageFieldValue) Reset()

func (*MessageFieldValue) String

func (x *MessageFieldValue) String() string

type MessageRule

type MessageRule struct {

	// resolver defines how to call methods to obtain the values needed to compose the message.
	Resolver *Resolver `protobuf:"bytes,1,opt,name=resolver,proto3,oneof" json:"resolver,omitempty"`
	// messages defines a list of dependent messages that must be retrieved to compose a message.
	Messages []*Message `protobuf:"bytes,2,rep,name=messages,proto3" json:"messages,omitempty"`
	// if custom_resolver is true, the resolver for this message is implemented by Go.
	// If there are any values retrieved by resolver or messages, they are passed as arguments for custom resolver.
	// Each field of the message returned by the custom resolver is automatically bound.
	// If you want to change the binding process for a particular field, set `custom_resolver=true` option for that field.
	CustomResolver *bool `protobuf:"varint,3,opt,name=custom_resolver,json=customResolver,proto3,oneof" json:"custom_resolver,omitempty"`
	// alias mapping between messages defined in other packages and messages defined on the federation service side.
	// The alias is the FQDN ( <package-name>.<message-name> ) to the message.
	// If this definition exists, type conversion is automatically performed before the field assignment operation.
	// If a message with this option has a field that is not present in the message specified by alias, and the alias option is not specified for that field, an error is occurred.
	Alias *string `protobuf:"bytes,4,opt,name=alias,proto3,oneof" json:"alias,omitempty"`
	// contains filtered or unexported fields
}

MessageRule define GRPC Federation rules for the message.

func (*MessageRule) Descriptor deprecated

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

Deprecated: Use MessageRule.ProtoReflect.Descriptor instead.

func (*MessageRule) GetAlias

func (x *MessageRule) GetAlias() string

func (*MessageRule) GetCustomResolver

func (x *MessageRule) GetCustomResolver() bool

func (*MessageRule) GetMessages

func (x *MessageRule) GetMessages() []*Message

func (*MessageRule) GetResolver

func (x *MessageRule) GetResolver() *Resolver

func (*MessageRule) ProtoMessage

func (*MessageRule) ProtoMessage()

func (*MessageRule) ProtoReflect

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

func (*MessageRule) Reset

func (x *MessageRule) Reset()

func (*MessageRule) String

func (x *MessageRule) String() string

type MessageValue

type MessageValue struct {

	// name specify the message name to be referred to by FQDN. format is `<package-name>.<message-name>`.
	// <package-name> can be omitted when referring to messages in the same package.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// fields represents message's fields.
	Fields []*MessageFieldValue `protobuf:"bytes,2,rep,name=fields,proto3" json:"fields,omitempty"`
	// contains filtered or unexported fields
}

MessageValue represents message literal.

func (*MessageValue) Descriptor deprecated

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

Deprecated: Use MessageValue.ProtoReflect.Descriptor instead.

func (*MessageValue) GetFields

func (x *MessageValue) GetFields() []*MessageFieldValue

func (*MessageValue) GetName

func (x *MessageValue) GetName() string

func (*MessageValue) ProtoMessage

func (*MessageValue) ProtoMessage()

func (*MessageValue) ProtoReflect

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

func (*MessageValue) Reset

func (x *MessageValue) Reset()

func (*MessageValue) String

func (x *MessageValue) String() string

type MethodRequest

type MethodRequest struct {

	// field name of the request message.
	Field string `protobuf:"bytes,1,opt,name=field,proto3" json:"field,omitempty"`
	// by used to refer to a name or message argument defined in a MessageRule, use `$.` to refer to the message argument.
	// Use CEL (https://github.com/google/cel-spec) to evaluate the expression.
	// Variables are already defined in MessageRule can be used.
	By *string `protobuf:"bytes,2,opt,name=by,proto3,oneof" json:"by,omitempty"`
	// double literal value.
	Double *float64 `protobuf:"fixed64,3,opt,name=double,proto3,oneof" json:"double,omitempty"`
	// repeated double literal values.
	Doubles []float64 `protobuf:"fixed64,4,rep,packed,name=doubles,proto3" json:"doubles,omitempty"`
	// float literal value.
	Float *float32 `protobuf:"fixed32,5,opt,name=float,proto3,oneof" json:"float,omitempty"`
	// repeated float literal values.
	Floats []float32 `protobuf:"fixed32,6,rep,packed,name=floats,proto3" json:"floats,omitempty"`
	// int32 literal value.
	Int32 *int32 `protobuf:"varint,7,opt,name=int32,proto3,oneof" json:"int32,omitempty"`
	// repeated int32 literal values.
	Int32S []int32 `protobuf:"varint,8,rep,packed,name=int32s,proto3" json:"int32s,omitempty"`
	// int64 literal value.
	Int64 *int64 `protobuf:"varint,9,opt,name=int64,proto3,oneof" json:"int64,omitempty"`
	// repeated int64 literal values.
	Int64S []int64 `protobuf:"varint,10,rep,packed,name=int64s,proto3" json:"int64s,omitempty"`
	// uint32 literal value.
	Uint32 *uint32 `protobuf:"varint,11,opt,name=uint32,proto3,oneof" json:"uint32,omitempty"`
	// repeated uint32 literal values.
	Uint32S []uint32 `protobuf:"varint,12,rep,packed,name=uint32s,proto3" json:"uint32s,omitempty"`
	// uint64 literal value.
	Uint64 *uint64 `protobuf:"varint,13,opt,name=uint64,proto3,oneof" json:"uint64,omitempty"`
	// repeated uint64 literal values.
	Uint64S []uint64 `protobuf:"varint,14,rep,packed,name=uint64s,proto3" json:"uint64s,omitempty"`
	// sint32 literal value.
	Sint32 *int32 `protobuf:"zigzag32,15,opt,name=sint32,proto3,oneof" json:"sint32,omitempty"`
	// repeated sint32 literal values.
	Sint32S []int32 `protobuf:"zigzag32,16,rep,packed,name=sint32s,proto3" json:"sint32s,omitempty"`
	// sint64 literal value.
	Sint64 *int64 `protobuf:"zigzag64,17,opt,name=sint64,proto3,oneof" json:"sint64,omitempty"`
	// repeated sint64 literal values.
	Sint64S []int64 `protobuf:"zigzag64,18,rep,packed,name=sint64s,proto3" json:"sint64s,omitempty"`
	// fixed32 literal value.
	Fixed32 *uint32 `protobuf:"fixed32,19,opt,name=fixed32,proto3,oneof" json:"fixed32,omitempty"`
	// repeated fixed32 literal values.
	Fixed32S []uint32 `protobuf:"fixed32,20,rep,packed,name=fixed32s,proto3" json:"fixed32s,omitempty"`
	// fixed64 literal value.
	Fixed64 *uint64 `protobuf:"fixed64,21,opt,name=fixed64,proto3,oneof" json:"fixed64,omitempty"`
	// repeated fixed64 literal values.
	Fixed64S []uint64 `protobuf:"fixed64,22,rep,packed,name=fixed64s,proto3" json:"fixed64s,omitempty"`
	// sfixed32 literal value.
	Sfixed32 *int32 `protobuf:"fixed32,23,opt,name=sfixed32,proto3,oneof" json:"sfixed32,omitempty"`
	// repeated sfixed32 literal values.
	Sfixed32S []int32 `protobuf:"fixed32,24,rep,packed,name=sfixed32s,proto3" json:"sfixed32s,omitempty"`
	// sfixed64 literal value.
	Sfixed64 *int64 `protobuf:"fixed64,25,opt,name=sfixed64,proto3,oneof" json:"sfixed64,omitempty"`
	// repeated sfixed64 literal values.
	Sfixed64S []int64 `protobuf:"fixed64,26,rep,packed,name=sfixed64s,proto3" json:"sfixed64s,omitempty"`
	// bool literal value.
	Bool *bool `protobuf:"varint,27,opt,name=bool,proto3,oneof" json:"bool,omitempty"`
	// repeated bool literal values.
	Bools []bool `protobuf:"varint,28,rep,packed,name=bools,proto3" json:"bools,omitempty"`
	// string literal value.
	String_ *string `protobuf:"bytes,29,opt,name=string,proto3,oneof" json:"string,omitempty"`
	// repeated string literal values.
	Strings []string `protobuf:"bytes,30,rep,name=strings,proto3" json:"strings,omitempty"`
	// bytes literal value.
	ByteString []byte `protobuf:"bytes,31,opt,name=byte_string,json=byteString,proto3,oneof" json:"byte_string,omitempty"`
	// repeated bytes literal values.
	ByteStrings [][]byte `protobuf:"bytes,32,rep,name=byte_strings,json=byteStrings,proto3" json:"byte_strings,omitempty"`
	// message literal value.
	Message *MessageValue `protobuf:"bytes,33,opt,name=message,proto3,oneof" json:"message,omitempty"`
	// repeated message literal values.
	Messages []*MessageValue `protobuf:"bytes,34,rep,name=messages,proto3" json:"messages,omitempty"`
	// enum literal value.
	Enum *string `protobuf:"bytes,35,opt,name=enum,proto3,oneof" json:"enum,omitempty"`
	// repeated enum literal values.
	Enums []string `protobuf:"bytes,36,rep,name=enums,proto3" json:"enums,omitempty"`
	// env literal value.
	Env *string `protobuf:"bytes,37,opt,name=env,proto3,oneof" json:"env,omitempty"`
	// repeated env literal values.
	Envs []string `protobuf:"bytes,38,rep,name=envs,proto3" json:"envs,omitempty"`
	// contains filtered or unexported fields
}

MethodRequest define parameters to be used for gRPC method request.

func (*MethodRequest) Descriptor deprecated

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

Deprecated: Use MethodRequest.ProtoReflect.Descriptor instead.

func (*MethodRequest) GetBool

func (x *MethodRequest) GetBool() bool

func (*MethodRequest) GetBools

func (x *MethodRequest) GetBools() []bool

func (*MethodRequest) GetBy

func (x *MethodRequest) GetBy() string

func (*MethodRequest) GetByteString

func (x *MethodRequest) GetByteString() []byte

func (*MethodRequest) GetByteStrings

func (x *MethodRequest) GetByteStrings() [][]byte

func (*MethodRequest) GetDouble

func (x *MethodRequest) GetDouble() float64

func (*MethodRequest) GetDoubles

func (x *MethodRequest) GetDoubles() []float64

func (*MethodRequest) GetEnum

func (x *MethodRequest) GetEnum() string

func (*MethodRequest) GetEnums

func (x *MethodRequest) GetEnums() []string

func (*MethodRequest) GetEnv

func (x *MethodRequest) GetEnv() string

func (*MethodRequest) GetEnvs

func (x *MethodRequest) GetEnvs() []string

func (*MethodRequest) GetField

func (x *MethodRequest) GetField() string

func (*MethodRequest) GetFixed32

func (x *MethodRequest) GetFixed32() uint32

func (*MethodRequest) GetFixed32S

func (x *MethodRequest) GetFixed32S() []uint32

func (*MethodRequest) GetFixed64

func (x *MethodRequest) GetFixed64() uint64

func (*MethodRequest) GetFixed64S

func (x *MethodRequest) GetFixed64S() []uint64

func (*MethodRequest) GetFloat

func (x *MethodRequest) GetFloat() float32

func (*MethodRequest) GetFloats

func (x *MethodRequest) GetFloats() []float32

func (*MethodRequest) GetInt32

func (x *MethodRequest) GetInt32() int32

func (*MethodRequest) GetInt32S

func (x *MethodRequest) GetInt32S() []int32

func (*MethodRequest) GetInt64

func (x *MethodRequest) GetInt64() int64

func (*MethodRequest) GetInt64S

func (x *MethodRequest) GetInt64S() []int64

func (*MethodRequest) GetMessage

func (x *MethodRequest) GetMessage() *MessageValue

func (*MethodRequest) GetMessages

func (x *MethodRequest) GetMessages() []*MessageValue

func (*MethodRequest) GetSfixed32

func (x *MethodRequest) GetSfixed32() int32

func (*MethodRequest) GetSfixed32S

func (x *MethodRequest) GetSfixed32S() []int32

func (*MethodRequest) GetSfixed64

func (x *MethodRequest) GetSfixed64() int64

func (*MethodRequest) GetSfixed64S

func (x *MethodRequest) GetSfixed64S() []int64

func (*MethodRequest) GetSint32

func (x *MethodRequest) GetSint32() int32

func (*MethodRequest) GetSint32S

func (x *MethodRequest) GetSint32S() []int32

func (*MethodRequest) GetSint64

func (x *MethodRequest) GetSint64() int64

func (*MethodRequest) GetSint64S

func (x *MethodRequest) GetSint64S() []int64

func (*MethodRequest) GetString_

func (x *MethodRequest) GetString_() string

func (*MethodRequest) GetStrings

func (x *MethodRequest) GetStrings() []string

func (*MethodRequest) GetUint32

func (x *MethodRequest) GetUint32() uint32

func (*MethodRequest) GetUint32S

func (x *MethodRequest) GetUint32S() []uint32

func (*MethodRequest) GetUint64

func (x *MethodRequest) GetUint64() uint64

func (*MethodRequest) GetUint64S

func (x *MethodRequest) GetUint64S() []uint64

func (*MethodRequest) ProtoMessage

func (*MethodRequest) ProtoMessage()

func (*MethodRequest) ProtoReflect

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

func (*MethodRequest) Reset

func (x *MethodRequest) Reset()

func (*MethodRequest) String

func (x *MethodRequest) String() string

type MethodResponse

type MethodResponse struct {

	// name specify the unique name that can be used in a `MessageRule` / `FieldRule` for the same message for a specific field in the response.
	Name *string `protobuf:"bytes,1,opt,name=name,proto3,oneof" json:"name,omitempty"`
	// field name in response message.
	Field *string `protobuf:"bytes,2,opt,name=field,proto3,oneof" json:"field,omitempty"`
	// autobind if the value referenced by `field` is a message type,
	// the value of a field with the same name and type as the field name of its own message is automatically assigned to the value of the field in the message.
	// If multiple autobinds are used at the same message,
	// you must explicitly use the `grpc.federation.field` option to do the binding yourself, since duplicate field names cannot be correctly determined as one.
	Autobind *bool `protobuf:"varint,3,opt,name=autobind,proto3,oneof" json:"autobind,omitempty"`
	// contains filtered or unexported fields
}

MethodResponse define which value of the method response is referenced.

func (*MethodResponse) Descriptor deprecated

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

Deprecated: Use MethodResponse.ProtoReflect.Descriptor instead.

func (*MethodResponse) GetAutobind

func (x *MethodResponse) GetAutobind() bool

func (*MethodResponse) GetField

func (x *MethodResponse) GetField() string

func (*MethodResponse) GetName

func (x *MethodResponse) GetName() string

func (*MethodResponse) ProtoMessage

func (*MethodResponse) ProtoMessage()

func (*MethodResponse) ProtoReflect

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

func (*MethodResponse) Reset

func (x *MethodResponse) Reset()

func (*MethodResponse) String

func (x *MethodResponse) String() string

type MethodRule

type MethodRule struct {

	// the time to timeout. If the specified time period elapses, DEADLINE_EXCEEDED status is returned.
	// If you want to handle this error, you need to implement a custom error handler in Go.
	// The format is the same as Go's time.Duration format. See https://pkg.go.dev/time#ParseDuration.
	Timeout *string `protobuf:"bytes,1,opt,name=timeout,proto3,oneof" json:"timeout,omitempty"`
	// contains filtered or unexported fields
}

func (*MethodRule) Descriptor deprecated

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

Deprecated: Use MethodRule.ProtoReflect.Descriptor instead.

func (*MethodRule) GetTimeout

func (x *MethodRule) GetTimeout() string

func (*MethodRule) ProtoMessage

func (*MethodRule) ProtoMessage()

func (*MethodRule) ProtoReflect

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

func (*MethodRule) Reset

func (x *MethodRule) Reset()

func (*MethodRule) String

func (x *MethodRule) String() string

type OneofRule

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

func (*OneofRule) Descriptor deprecated

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

Deprecated: Use OneofRule.ProtoReflect.Descriptor instead.

func (*OneofRule) ProtoMessage

func (*OneofRule) ProtoMessage()

func (*OneofRule) ProtoReflect

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

func (*OneofRule) Reset

func (x *OneofRule) Reset()

func (*OneofRule) String

func (x *OneofRule) String() string

type Resolver

type Resolver struct {

	// method specify the FQDN for the gRPC method. format is `<package-name>.<service-name>/<method-name>`.
	Method string `protobuf:"bytes,1,opt,name=method,proto3" json:"method,omitempty"`
	// request specify request parameters for the gRPC method.
	Request []*MethodRequest `protobuf:"bytes,2,rep,name=request,proto3" json:"request,omitempty"`
	// response specify which value in the gRPC method response is referenced by which name.
	Response []*MethodResponse `protobuf:"bytes,3,rep,name=response,proto3" json:"response,omitempty"`
	// the time to timeout. If the specified time period elapses, DEADLINE_EXCEEDED status is returned.
	// If you want to handle this error, you need to implement a custom error handler in Go.
	// The format is the same as Go's time.Duration format. See https://pkg.go.dev/time#ParseDuration.
	Timeout *string `protobuf:"bytes,4,opt,name=timeout,proto3,oneof" json:"timeout,omitempty"`
	// retry specifies the retry policy if the method call fails.
	Retry *RetryPolicy `protobuf:"bytes,5,opt,name=retry,proto3,oneof" json:"retry,omitempty"`
	// contains filtered or unexported fields
}

Resolver define the gRPC method, how to call it, and which value to use in the return value.

func (*Resolver) Descriptor deprecated

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

Deprecated: Use Resolver.ProtoReflect.Descriptor instead.

func (*Resolver) GetMethod

func (x *Resolver) GetMethod() string

func (*Resolver) GetRequest

func (x *Resolver) GetRequest() []*MethodRequest

func (*Resolver) GetResponse

func (x *Resolver) GetResponse() []*MethodResponse

func (*Resolver) GetRetry

func (x *Resolver) GetRetry() *RetryPolicy

func (*Resolver) GetTimeout

func (x *Resolver) GetTimeout() string

func (*Resolver) ProtoMessage

func (*Resolver) ProtoMessage()

func (*Resolver) ProtoReflect

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

func (*Resolver) Reset

func (x *Resolver) Reset()

func (*Resolver) String

func (x *Resolver) String() string

type RetryPolicy

type RetryPolicy struct {

	// Types that are assignable to Policy:
	//
	//	*RetryPolicy_Constant
	//	*RetryPolicy_Exponential
	Policy isRetryPolicy_Policy `protobuf_oneof:"policy"`
	// contains filtered or unexported fields
}

RetryPolicy define the retry policy if the method call fails.

func (*RetryPolicy) Descriptor deprecated

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

Deprecated: Use RetryPolicy.ProtoReflect.Descriptor instead.

func (*RetryPolicy) GetConstant

func (x *RetryPolicy) GetConstant() *RetryPolicyConstant

func (*RetryPolicy) GetExponential

func (x *RetryPolicy) GetExponential() *RetryPolicyExponential

func (*RetryPolicy) GetPolicy

func (m *RetryPolicy) GetPolicy() isRetryPolicy_Policy

func (*RetryPolicy) ProtoMessage

func (*RetryPolicy) ProtoMessage()

func (*RetryPolicy) ProtoReflect

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

func (*RetryPolicy) Reset

func (x *RetryPolicy) Reset()

func (*RetryPolicy) String

func (x *RetryPolicy) String() string

type RetryPolicyConstant

type RetryPolicyConstant struct {

	// interval value. ( default value is 1s ).
	Interval *string `protobuf:"bytes,1,opt,name=interval,proto3,oneof" json:"interval,omitempty"`
	// max retry count. ( default value is 5. If zero is specified, it never stops )
	MaxRetries *uint64 `protobuf:"varint,2,opt,name=max_retries,json=maxRetries,proto3,oneof" json:"max_retries,omitempty"`
	// contains filtered or unexported fields
}

RetryPolicyConstant define "constant" based retry policy.

func (*RetryPolicyConstant) Descriptor deprecated

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

Deprecated: Use RetryPolicyConstant.ProtoReflect.Descriptor instead.

func (*RetryPolicyConstant) GetInterval

func (x *RetryPolicyConstant) GetInterval() string

func (*RetryPolicyConstant) GetMaxRetries

func (x *RetryPolicyConstant) GetMaxRetries() uint64

func (*RetryPolicyConstant) ProtoMessage

func (*RetryPolicyConstant) ProtoMessage()

func (*RetryPolicyConstant) ProtoReflect

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

func (*RetryPolicyConstant) Reset

func (x *RetryPolicyConstant) Reset()

func (*RetryPolicyConstant) String

func (x *RetryPolicyConstant) String() string

type RetryPolicyExponential

type RetryPolicyExponential struct {

	// initial interval value. ( default value is "500ms" ).
	InitialInterval *string `protobuf:"bytes,1,opt,name=initial_interval,json=initialInterval,proto3,oneof" json:"initial_interval,omitempty"`
	// randomization factor value. ( default value is 0.5 ).
	RandomizationFactor *float64 `` /* 126-byte string literal not displayed */
	// multiplier. ( default value is 1.5 ).
	Multiplier *float64 `protobuf:"fixed64,3,opt,name=multiplier,proto3,oneof" json:"multiplier,omitempty"`
	// max interval value. ( default value is "60s" ).
	MaxInterval *string `protobuf:"bytes,4,opt,name=max_interval,json=maxInterval,proto3,oneof" json:"max_interval,omitempty"`
	// max retry count. ( default value is 5. If zero is specified, it never stops ).
	MaxRetries *uint64 `protobuf:"varint,5,opt,name=max_retries,json=maxRetries,proto3,oneof" json:"max_retries,omitempty"`
	// contains filtered or unexported fields
}

RetryPolicyExponential define "exponential backoff" based retry policy.

func (*RetryPolicyExponential) Descriptor deprecated

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

Deprecated: Use RetryPolicyExponential.ProtoReflect.Descriptor instead.

func (*RetryPolicyExponential) GetInitialInterval

func (x *RetryPolicyExponential) GetInitialInterval() string

func (*RetryPolicyExponential) GetMaxInterval

func (x *RetryPolicyExponential) GetMaxInterval() string

func (*RetryPolicyExponential) GetMaxRetries

func (x *RetryPolicyExponential) GetMaxRetries() uint64

func (*RetryPolicyExponential) GetMultiplier

func (x *RetryPolicyExponential) GetMultiplier() float64

func (*RetryPolicyExponential) GetRandomizationFactor

func (x *RetryPolicyExponential) GetRandomizationFactor() float64

func (*RetryPolicyExponential) ProtoMessage

func (*RetryPolicyExponential) ProtoMessage()

func (*RetryPolicyExponential) ProtoReflect

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

func (*RetryPolicyExponential) Reset

func (x *RetryPolicyExponential) Reset()

func (*RetryPolicyExponential) String

func (x *RetryPolicyExponential) String() string

type RetryPolicy_Constant

type RetryPolicy_Constant struct {
	// retry according to the "constant" policy.
	Constant *RetryPolicyConstant `protobuf:"bytes,1,opt,name=constant,proto3,oneof"`
}

type RetryPolicy_Exponential

type RetryPolicy_Exponential struct {
	// retry according to the "exponential backoff" policy.
	// The following Go library is used in the implementation,
	// so please refer to the library documentation for how to specify each parameter.
	// https://pkg.go.dev/github.com/cenkalti/backoff/v4#section-readme.
	Exponential *RetryPolicyExponential `protobuf:"bytes,2,opt,name=exponential,proto3,oneof"`
}

type ServiceDependency

type ServiceDependency struct {

	// name to be used when initializing the gRPC client.
	Name *string `protobuf:"bytes,1,opt,name=name,proto3,oneof" json:"name,omitempty"`
	// service is the name of the dependent service.
	Service string `protobuf:"bytes,2,opt,name=service,proto3" json:"service,omitempty"`
	// contains filtered or unexported fields
}

ServiceDependency assigns a uniquely determined name to the service.

func (*ServiceDependency) Descriptor deprecated

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

Deprecated: Use ServiceDependency.ProtoReflect.Descriptor instead.

func (*ServiceDependency) GetName

func (x *ServiceDependency) GetName() string

func (*ServiceDependency) GetService

func (x *ServiceDependency) GetService() string

func (*ServiceDependency) ProtoMessage

func (*ServiceDependency) ProtoMessage()

func (*ServiceDependency) ProtoReflect

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

func (*ServiceDependency) Reset

func (x *ServiceDependency) Reset()

func (*ServiceDependency) String

func (x *ServiceDependency) String() string

type ServiceRule

type ServiceRule struct {

	// dependencies defines a unique name for all services on which federation service depends.
	// The name will be used when creating the gRPC client.
	Dependencies []*ServiceDependency `protobuf:"bytes,1,rep,name=dependencies,proto3" json:"dependencies,omitempty"`
	// contains filtered or unexported fields
}

ServiceRule define GRPC Federation rules for the service.

func (*ServiceRule) Descriptor deprecated

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

Deprecated: Use ServiceRule.ProtoReflect.Descriptor instead.

func (*ServiceRule) GetDependencies

func (x *ServiceRule) GetDependencies() []*ServiceDependency

func (*ServiceRule) ProtoMessage

func (*ServiceRule) ProtoMessage()

func (*ServiceRule) ProtoReflect

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

func (*ServiceRule) Reset

func (x *ServiceRule) Reset()

func (*ServiceRule) String

func (x *ServiceRule) String() string

Jump to

Keyboard shortcuts

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