grpctool

package
v15.6.0-rc2 Latest Latest
Warning

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

Go to latest
Published: Oct 31, 2022 License: MIT Imports: 45 Imported by: 0

Documentation

Index

Constants

View Source
const (
	HttpRequestHeaderFieldNumber      protoreflect.FieldNumber = 1
	HttpRequestDataFieldNumber        protoreflect.FieldNumber = 2
	HttpRequestTrailerFieldNumber     protoreflect.FieldNumber = 3
	HttpRequestUpgradeDataFieldNumber protoreflect.FieldNumber = 4

	HttpResponseHeaderFieldNumber      protoreflect.FieldNumber = 1
	HttpResponseDataFieldNumber        protoreflect.FieldNumber = 2
	HttpResponseTrailerFieldNumber     protoreflect.FieldNumber = 3
	HttpResponseUpgradeDataFieldNumber protoreflect.FieldNumber = 4
)
View Source
const (
	MetadataAuthorization = "authorization"
)

Variables

View Source
var File_internal_tool_grpctool_grpctool_proto protoreflect.FileDescriptor

Functions

func AddMaxConnectionAgeContext

func AddMaxConnectionAgeContext(ctx, ageCtx context.Context) context.Context

func HandleIoError

func HandleIoError(msg string, err error) error

func IsStatusError

func IsStatusError(err error) bool

func MaxConnectionAge2GrpcKeepalive

func MaxConnectionAge2GrpcKeepalive(auxCtx context.Context, maxConnectionAge time.Duration) (grpc.ServerOption, stats.Handler)

func MaxConnectionAgeContextFromStreamContext

func MaxConnectionAgeContextFromStreamContext(streamCtx context.Context) context.Context

func MetaToValuesMap

func MetaToValuesMap(meta metadata.MD) map[string]*prototool.Values

func NewServerMaxConnAgeStatsHandler

func NewServerMaxConnAgeStatsHandler(auxCtx context.Context, maxConnectionAge time.Duration) stats.Handler

func NewTokenCredentials

func NewTokenCredentials(token api.AgentToken, insecure bool) credentials.PerRPCCredentials

func RequestCanceled

func RequestCanceled(err error) bool

func RequestCanceledOrTimedOut

func RequestCanceledOrTimedOut(err error) bool

func RequestTimedOut

func RequestTimedOut(err error) bool

func SplitGrpcMethod

func SplitGrpcMethod(fullMethodName string) (string, string)

func StartServer

func StartServer(stage stager.Stage, server *grpc.Server, listener func() (net.Listener, error), onStop func())

func StreamClientLimitingInterceptor

func StreamClientLimitingInterceptor(limiter ClientLimiter) grpc.StreamClientInterceptor

StreamClientLimitingInterceptor returns a new stream server interceptor that performs rate limiting on the request.

func StreamClientValidatingInterceptor

func StreamClientValidatingInterceptor(parentCtx context.Context, desc *grpc.StreamDesc, cc *grpc.ClientConn, method string, streamer grpc.Streamer, opts ...grpc.CallOption) (grpc.ClientStream, error)

StreamClientValidatingInterceptor is a stream client interceptor that performs response stream validation.

func StreamServerLimitingInterceptor

func StreamServerLimitingInterceptor(limiter ServerLimiter) grpc.StreamServerInterceptor

StreamServerLimitingInterceptor returns a new stream server interceptor that performs limiting based on the given context

func UnaryClientLimitingInterceptor

func UnaryClientLimitingInterceptor(limiter ClientLimiter) grpc.UnaryClientInterceptor

UnaryClientLimitingInterceptor returns a new unary client interceptor that performs request rate limiting.

func UnaryClientValidatingInterceptor

func UnaryClientValidatingInterceptor(parentCtx context.Context, method string, req, reply interface{}, cc *grpc.ClientConn, invoker grpc.UnaryInvoker, opts ...grpc.CallOption) error

UnaryClientValidatingInterceptor is a unary client interceptor that performs response validation.

func UnaryServerLimitingInterceptor

func UnaryServerLimitingInterceptor(limiter ServerLimiter) grpc.UnaryServerInterceptor

UnaryServerLimitingInterceptor returns a new unary server interceptor that performs limiting based on the given context

func ValuesMapToMeta

func ValuesMapToMeta(vals map[string]*prototool.Values) metadata.MD

Types

type ClientLimiter

type ClientLimiter interface {
	// Wait blocks until limiter permits an event to happen.
	// It returns an error if the Context is
	// canceled, or the expected wait time exceeds the Context's Deadline.
	Wait(context.Context) error
}

ClientLimiter defines the interface to perform client-side request rate limiting. You can use golang.org/x/time/rate.Limiter as an implementation of this interface.

type DialListener

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

func NewDialListener

func NewDialListener() *DialListener

func (*DialListener) Accept

func (l *DialListener) Accept() (net.Conn, error)

func (*DialListener) Addr

func (l *DialListener) Addr() net.Addr

func (*DialListener) Close

func (l *DialListener) Close() error

func (*DialListener) DialContext

func (l *DialListener) DialContext(ctx context.Context, addr string) (net.Conn, error)

type DoResponse added in v15.1.0

type DoResponse struct {
	// Resp is the server's response to a request.
	Resp *http.Response
	// UpgradeConn is the underlying network connection to the server.
	// May be nil if request was not an Upgrade request or if server decided not to switch protocols
	// (non-101 response status code).
	UpgradeConn net.Conn
	// ConnReader is a buffered reader, wrapping UpgradeConn. Is set when UpgradeConn is set.
	// Must be used for reading as it may contain buffered bytes that are no longer available directly via UpgradeConn.
	ConnReader *bufio.Reader
}

type EOFCallback

type EOFCallback func() error

type ErrResp added in v15.1.0

type ErrResp struct {
	StatusCode int32
	Msg        string
	// Err can be nil.
	Err error
}

type HandleIoErrorFunc

type HandleIoErrorFunc func(msg string, err error) error

type HandleProcessingErrorFunc

type HandleProcessingErrorFunc func(msg string, err error)

type HttpDo

type HttpDo func(ctx context.Context, header *HttpRequest_Header, body io.Reader) (DoResponse, error)

HttpDo makes an HTTP request and returns a response. If an HTTP upgrade was requested, the underlying network connection is also returned. Implementations that don't support Upgrade should return an error.

type HttpRequest

type HttpRequest struct {

	// Types that are assignable to Message:
	//	*HttpRequest_Header_
	//	*HttpRequest_Data_
	//	*HttpRequest_Trailer_
	//	*HttpRequest_UpgradeData_
	Message isHttpRequest_Message `protobuf_oneof:"message"`
	// contains filtered or unexported fields
}

func (*HttpRequest) Descriptor deprecated

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

Deprecated: Use HttpRequest.ProtoReflect.Descriptor instead.

func (*HttpRequest) GetData

func (x *HttpRequest) GetData() *HttpRequest_Data

func (*HttpRequest) GetHeader

func (x *HttpRequest) GetHeader() *HttpRequest_Header

func (*HttpRequest) GetMessage

func (m *HttpRequest) GetMessage() isHttpRequest_Message

func (*HttpRequest) GetTrailer

func (x *HttpRequest) GetTrailer() *HttpRequest_Trailer

func (*HttpRequest) GetUpgradeData added in v15.1.0

func (x *HttpRequest) GetUpgradeData() *HttpRequest_UpgradeData

func (*HttpRequest) ProtoMessage

func (*HttpRequest) ProtoMessage()

func (*HttpRequest) ProtoReflect

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

func (*HttpRequest) Reset

func (x *HttpRequest) Reset()

func (*HttpRequest) String

func (x *HttpRequest) String() string

func (*HttpRequest) Validate

func (m *HttpRequest) Validate() error

Validate checks the field values on HttpRequest with the rules defined in the proto definition for this message. If any rules are violated, the first error encountered is returned, or nil if there are no violations.

func (*HttpRequest) ValidateAll

func (m *HttpRequest) ValidateAll() error

ValidateAll checks the field values on HttpRequest with the rules defined in the proto definition for this message. If any rules are violated, the result is a list of violation errors wrapped in HttpRequestMultiError, or nil if none found.

type HttpRequestClient

type HttpRequestClient interface {
	Send(*HttpRequest) error
	Recv() (*HttpResponse, error)
	grpc.ClientStream
}

type HttpRequestMultiError

type HttpRequestMultiError []error

HttpRequestMultiError is an error wrapping multiple validation errors returned by HttpRequest.ValidateAll() if the designated constraints aren't met.

func (HttpRequestMultiError) AllErrors

func (m HttpRequestMultiError) AllErrors() []error

AllErrors returns a list of validation violation errors.

func (HttpRequestMultiError) Error

func (m HttpRequestMultiError) Error() string

Error returns a concatenation of all the error messages it wraps.

type HttpRequestValidationError

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

HttpRequestValidationError is the validation error returned by HttpRequest.Validate if the designated constraints aren't met.

func (HttpRequestValidationError) Cause

Cause function returns cause value.

func (HttpRequestValidationError) Error

Error satisfies the builtin error interface

func (HttpRequestValidationError) ErrorName

func (e HttpRequestValidationError) ErrorName() string

ErrorName returns error name.

func (HttpRequestValidationError) Field

Field function returns field value.

func (HttpRequestValidationError) Key

Key function returns key value.

func (HttpRequestValidationError) Reason

Reason function returns reason value.

type HttpRequest_Data

type HttpRequest_Data struct {
	Data []byte `protobuf:"bytes,1,opt,name=data,proto3" json:"data,omitempty"`
	// contains filtered or unexported fields
}

func (*HttpRequest_Data) Descriptor deprecated

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

Deprecated: Use HttpRequest_Data.ProtoReflect.Descriptor instead.

func (*HttpRequest_Data) GetData

func (x *HttpRequest_Data) GetData() []byte

func (*HttpRequest_Data) ProtoMessage

func (*HttpRequest_Data) ProtoMessage()

func (*HttpRequest_Data) ProtoReflect

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

func (*HttpRequest_Data) Reset

func (x *HttpRequest_Data) Reset()

func (*HttpRequest_Data) String

func (x *HttpRequest_Data) String() string

func (*HttpRequest_Data) Validate

func (m *HttpRequest_Data) Validate() error

Validate checks the field values on HttpRequest_Data with the rules defined in the proto definition for this message. If any rules are violated, the first error encountered is returned, or nil if there are no violations.

func (*HttpRequest_Data) ValidateAll

func (m *HttpRequest_Data) ValidateAll() error

ValidateAll checks the field values on HttpRequest_Data with the rules defined in the proto definition for this message. If any rules are violated, the result is a list of violation errors wrapped in HttpRequest_DataMultiError, or nil if none found.

type HttpRequest_DataMultiError

type HttpRequest_DataMultiError []error

HttpRequest_DataMultiError is an error wrapping multiple validation errors returned by HttpRequest_Data.ValidateAll() if the designated constraints aren't met.

func (HttpRequest_DataMultiError) AllErrors

func (m HttpRequest_DataMultiError) AllErrors() []error

AllErrors returns a list of validation violation errors.

func (HttpRequest_DataMultiError) Error

Error returns a concatenation of all the error messages it wraps.

type HttpRequest_DataValidationError

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

HttpRequest_DataValidationError is the validation error returned by HttpRequest_Data.Validate if the designated constraints aren't met.

func (HttpRequest_DataValidationError) Cause

Cause function returns cause value.

func (HttpRequest_DataValidationError) Error

Error satisfies the builtin error interface

func (HttpRequest_DataValidationError) ErrorName

ErrorName returns error name.

func (HttpRequest_DataValidationError) Field

Field function returns field value.

func (HttpRequest_DataValidationError) Key

Key function returns key value.

func (HttpRequest_DataValidationError) Reason

Reason function returns reason value.

type HttpRequest_Data_

type HttpRequest_Data_ struct {
	Data *HttpRequest_Data `protobuf:"bytes,2,opt,name=data,proto3,oneof"`
}

type HttpRequest_Header

type HttpRequest_Header struct {
	Request *prototool.HttpRequest `protobuf:"bytes,1,opt,name=request,proto3" json:"request,omitempty"`
	Extra   *anypb.Any             `protobuf:"bytes,2,opt,name=extra,proto3" json:"extra,omitempty"`
	// contains filtered or unexported fields
}

func (*HttpRequest_Header) Descriptor deprecated

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

Deprecated: Use HttpRequest_Header.ProtoReflect.Descriptor instead.

func (*HttpRequest_Header) GetExtra

func (x *HttpRequest_Header) GetExtra() *anypb.Any

func (*HttpRequest_Header) GetRequest

func (x *HttpRequest_Header) GetRequest() *prototool.HttpRequest

func (*HttpRequest_Header) ProtoMessage

func (*HttpRequest_Header) ProtoMessage()

func (*HttpRequest_Header) ProtoReflect

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

func (*HttpRequest_Header) Reset

func (x *HttpRequest_Header) Reset()

func (*HttpRequest_Header) String

func (x *HttpRequest_Header) String() string

func (*HttpRequest_Header) Validate

func (m *HttpRequest_Header) Validate() error

Validate checks the field values on HttpRequest_Header with the rules defined in the proto definition for this message. If any rules are violated, the first error encountered is returned, or nil if there are no violations.

func (*HttpRequest_Header) ValidateAll

func (m *HttpRequest_Header) ValidateAll() error

ValidateAll checks the field values on HttpRequest_Header with the rules defined in the proto definition for this message. If any rules are violated, the result is a list of violation errors wrapped in HttpRequest_HeaderMultiError, or nil if none found.

type HttpRequest_HeaderMultiError

type HttpRequest_HeaderMultiError []error

HttpRequest_HeaderMultiError is an error wrapping multiple validation errors returned by HttpRequest_Header.ValidateAll() if the designated constraints aren't met.

func (HttpRequest_HeaderMultiError) AllErrors

func (m HttpRequest_HeaderMultiError) AllErrors() []error

AllErrors returns a list of validation violation errors.

func (HttpRequest_HeaderMultiError) Error

Error returns a concatenation of all the error messages it wraps.

type HttpRequest_HeaderValidationError

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

HttpRequest_HeaderValidationError is the validation error returned by HttpRequest_Header.Validate if the designated constraints aren't met.

func (HttpRequest_HeaderValidationError) Cause

Cause function returns cause value.

func (HttpRequest_HeaderValidationError) Error

Error satisfies the builtin error interface

func (HttpRequest_HeaderValidationError) ErrorName

ErrorName returns error name.

func (HttpRequest_HeaderValidationError) Field

Field function returns field value.

func (HttpRequest_HeaderValidationError) Key

Key function returns key value.

func (HttpRequest_HeaderValidationError) Reason

Reason function returns reason value.

type HttpRequest_Header_

type HttpRequest_Header_ struct {
	Header *HttpRequest_Header `protobuf:"bytes,1,opt,name=header,proto3,oneof"`
}

type HttpRequest_Trailer

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

func (*HttpRequest_Trailer) Descriptor deprecated

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

Deprecated: Use HttpRequest_Trailer.ProtoReflect.Descriptor instead.

func (*HttpRequest_Trailer) ProtoMessage

func (*HttpRequest_Trailer) ProtoMessage()

func (*HttpRequest_Trailer) ProtoReflect

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

func (*HttpRequest_Trailer) Reset

func (x *HttpRequest_Trailer) Reset()

func (*HttpRequest_Trailer) String

func (x *HttpRequest_Trailer) String() string

func (*HttpRequest_Trailer) Validate

func (m *HttpRequest_Trailer) Validate() error

Validate checks the field values on HttpRequest_Trailer with the rules defined in the proto definition for this message. If any rules are violated, the first error encountered is returned, or nil if there are no violations.

func (*HttpRequest_Trailer) ValidateAll

func (m *HttpRequest_Trailer) ValidateAll() error

ValidateAll checks the field values on HttpRequest_Trailer with the rules defined in the proto definition for this message. If any rules are violated, the result is a list of violation errors wrapped in HttpRequest_TrailerMultiError, or nil if none found.

type HttpRequest_TrailerMultiError

type HttpRequest_TrailerMultiError []error

HttpRequest_TrailerMultiError is an error wrapping multiple validation errors returned by HttpRequest_Trailer.ValidateAll() if the designated constraints aren't met.

func (HttpRequest_TrailerMultiError) AllErrors

func (m HttpRequest_TrailerMultiError) AllErrors() []error

AllErrors returns a list of validation violation errors.

func (HttpRequest_TrailerMultiError) Error

Error returns a concatenation of all the error messages it wraps.

type HttpRequest_TrailerValidationError

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

HttpRequest_TrailerValidationError is the validation error returned by HttpRequest_Trailer.Validate if the designated constraints aren't met.

func (HttpRequest_TrailerValidationError) Cause

Cause function returns cause value.

func (HttpRequest_TrailerValidationError) Error

Error satisfies the builtin error interface

func (HttpRequest_TrailerValidationError) ErrorName

ErrorName returns error name.

func (HttpRequest_TrailerValidationError) Field

Field function returns field value.

func (HttpRequest_TrailerValidationError) Key

Key function returns key value.

func (HttpRequest_TrailerValidationError) Reason

Reason function returns reason value.

type HttpRequest_Trailer_

type HttpRequest_Trailer_ struct {
	Trailer *HttpRequest_Trailer `protobuf:"bytes,3,opt,name=trailer,proto3,oneof"`
}

type HttpRequest_UpgradeData added in v15.1.0

type HttpRequest_UpgradeData struct {
	Data []byte `protobuf:"bytes,1,opt,name=data,proto3" json:"data,omitempty"`
	// contains filtered or unexported fields
}

func (*HttpRequest_UpgradeData) Descriptor deprecated added in v15.1.0

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

Deprecated: Use HttpRequest_UpgradeData.ProtoReflect.Descriptor instead.

func (*HttpRequest_UpgradeData) GetData added in v15.1.0

func (x *HttpRequest_UpgradeData) GetData() []byte

func (*HttpRequest_UpgradeData) ProtoMessage added in v15.1.0

func (*HttpRequest_UpgradeData) ProtoMessage()

func (*HttpRequest_UpgradeData) ProtoReflect added in v15.1.0

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

func (*HttpRequest_UpgradeData) Reset added in v15.1.0

func (x *HttpRequest_UpgradeData) Reset()

func (*HttpRequest_UpgradeData) String added in v15.1.0

func (x *HttpRequest_UpgradeData) String() string

func (*HttpRequest_UpgradeData) Validate added in v15.1.0

func (m *HttpRequest_UpgradeData) Validate() error

Validate checks the field values on HttpRequest_UpgradeData with the rules defined in the proto definition for this message. If any rules are violated, the first error encountered is returned, or nil if there are no violations.

func (*HttpRequest_UpgradeData) ValidateAll added in v15.1.0

func (m *HttpRequest_UpgradeData) ValidateAll() error

ValidateAll checks the field values on HttpRequest_UpgradeData with the rules defined in the proto definition for this message. If any rules are violated, the result is a list of violation errors wrapped in HttpRequest_UpgradeDataMultiError, or nil if none found.

type HttpRequest_UpgradeDataMultiError added in v15.1.0

type HttpRequest_UpgradeDataMultiError []error

HttpRequest_UpgradeDataMultiError is an error wrapping multiple validation errors returned by HttpRequest_UpgradeData.ValidateAll() if the designated constraints aren't met.

func (HttpRequest_UpgradeDataMultiError) AllErrors added in v15.1.0

func (m HttpRequest_UpgradeDataMultiError) AllErrors() []error

AllErrors returns a list of validation violation errors.

func (HttpRequest_UpgradeDataMultiError) Error added in v15.1.0

Error returns a concatenation of all the error messages it wraps.

type HttpRequest_UpgradeDataValidationError added in v15.1.0

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

HttpRequest_UpgradeDataValidationError is the validation error returned by HttpRequest_UpgradeData.Validate if the designated constraints aren't met.

func (HttpRequest_UpgradeDataValidationError) Cause added in v15.1.0

Cause function returns cause value.

func (HttpRequest_UpgradeDataValidationError) Error added in v15.1.0

Error satisfies the builtin error interface

func (HttpRequest_UpgradeDataValidationError) ErrorName added in v15.1.0

ErrorName returns error name.

func (HttpRequest_UpgradeDataValidationError) Field added in v15.1.0

Field function returns field value.

func (HttpRequest_UpgradeDataValidationError) Key added in v15.1.0

Key function returns key value.

func (HttpRequest_UpgradeDataValidationError) Reason added in v15.1.0

Reason function returns reason value.

type HttpRequest_UpgradeData_ added in v15.1.0

type HttpRequest_UpgradeData_ struct {
	UpgradeData *HttpRequest_UpgradeData `protobuf:"bytes,4,opt,name=upgradeData,proto3,oneof"`
}

type HttpResponse

type HttpResponse struct {

	// Types that are assignable to Message:
	//	*HttpResponse_Header_
	//	*HttpResponse_Data_
	//	*HttpResponse_Trailer_
	//	*HttpResponse_UpgradeData_
	Message isHttpResponse_Message `protobuf_oneof:"message"`
	// contains filtered or unexported fields
}

func (*HttpResponse) Descriptor deprecated

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

Deprecated: Use HttpResponse.ProtoReflect.Descriptor instead.

func (*HttpResponse) GetData

func (x *HttpResponse) GetData() *HttpResponse_Data

func (*HttpResponse) GetHeader

func (x *HttpResponse) GetHeader() *HttpResponse_Header

func (*HttpResponse) GetMessage

func (m *HttpResponse) GetMessage() isHttpResponse_Message

func (*HttpResponse) GetTrailer

func (x *HttpResponse) GetTrailer() *HttpResponse_Trailer

func (*HttpResponse) GetUpgradeData added in v15.1.0

func (x *HttpResponse) GetUpgradeData() *HttpResponse_UpgradeData

func (*HttpResponse) ProtoMessage

func (*HttpResponse) ProtoMessage()

func (*HttpResponse) ProtoReflect

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

func (*HttpResponse) Reset

func (x *HttpResponse) Reset()

func (*HttpResponse) String

func (x *HttpResponse) String() string

func (*HttpResponse) Validate

func (m *HttpResponse) Validate() error

Validate checks the field values on HttpResponse with the rules defined in the proto definition for this message. If any rules are violated, the first error encountered is returned, or nil if there are no violations.

func (*HttpResponse) ValidateAll

func (m *HttpResponse) ValidateAll() error

ValidateAll checks the field values on HttpResponse with the rules defined in the proto definition for this message. If any rules are violated, the result is a list of violation errors wrapped in HttpResponseMultiError, or nil if none found.

type HttpResponseMultiError

type HttpResponseMultiError []error

HttpResponseMultiError is an error wrapping multiple validation errors returned by HttpResponse.ValidateAll() if the designated constraints aren't met.

func (HttpResponseMultiError) AllErrors

func (m HttpResponseMultiError) AllErrors() []error

AllErrors returns a list of validation violation errors.

func (HttpResponseMultiError) Error

func (m HttpResponseMultiError) Error() string

Error returns a concatenation of all the error messages it wraps.

type HttpResponseValidationError

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

HttpResponseValidationError is the validation error returned by HttpResponse.Validate if the designated constraints aren't met.

func (HttpResponseValidationError) Cause

Cause function returns cause value.

func (HttpResponseValidationError) Error

Error satisfies the builtin error interface

func (HttpResponseValidationError) ErrorName

func (e HttpResponseValidationError) ErrorName() string

ErrorName returns error name.

func (HttpResponseValidationError) Field

Field function returns field value.

func (HttpResponseValidationError) Key

Key function returns key value.

func (HttpResponseValidationError) Reason

Reason function returns reason value.

type HttpResponse_Data

type HttpResponse_Data struct {
	Data []byte `protobuf:"bytes,1,opt,name=data,proto3" json:"data,omitempty"`
	// contains filtered or unexported fields
}

func (*HttpResponse_Data) Descriptor deprecated

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

Deprecated: Use HttpResponse_Data.ProtoReflect.Descriptor instead.

func (*HttpResponse_Data) GetData

func (x *HttpResponse_Data) GetData() []byte

func (*HttpResponse_Data) ProtoMessage

func (*HttpResponse_Data) ProtoMessage()

func (*HttpResponse_Data) ProtoReflect

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

func (*HttpResponse_Data) Reset

func (x *HttpResponse_Data) Reset()

func (*HttpResponse_Data) String

func (x *HttpResponse_Data) String() string

func (*HttpResponse_Data) Validate

func (m *HttpResponse_Data) Validate() error

Validate checks the field values on HttpResponse_Data with the rules defined in the proto definition for this message. If any rules are violated, the first error encountered is returned, or nil if there are no violations.

func (*HttpResponse_Data) ValidateAll

func (m *HttpResponse_Data) ValidateAll() error

ValidateAll checks the field values on HttpResponse_Data with the rules defined in the proto definition for this message. If any rules are violated, the result is a list of violation errors wrapped in HttpResponse_DataMultiError, or nil if none found.

type HttpResponse_DataMultiError

type HttpResponse_DataMultiError []error

HttpResponse_DataMultiError is an error wrapping multiple validation errors returned by HttpResponse_Data.ValidateAll() if the designated constraints aren't met.

func (HttpResponse_DataMultiError) AllErrors

func (m HttpResponse_DataMultiError) AllErrors() []error

AllErrors returns a list of validation violation errors.

func (HttpResponse_DataMultiError) Error

Error returns a concatenation of all the error messages it wraps.

type HttpResponse_DataValidationError

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

HttpResponse_DataValidationError is the validation error returned by HttpResponse_Data.Validate if the designated constraints aren't met.

func (HttpResponse_DataValidationError) Cause

Cause function returns cause value.

func (HttpResponse_DataValidationError) Error

Error satisfies the builtin error interface

func (HttpResponse_DataValidationError) ErrorName

ErrorName returns error name.

func (HttpResponse_DataValidationError) Field

Field function returns field value.

func (HttpResponse_DataValidationError) Key

Key function returns key value.

func (HttpResponse_DataValidationError) Reason

Reason function returns reason value.

type HttpResponse_Data_

type HttpResponse_Data_ struct {
	Data *HttpResponse_Data `protobuf:"bytes,2,opt,name=data,proto3,oneof"`
}

type HttpResponse_Header

type HttpResponse_Header struct {
	Response *prototool.HttpResponse `protobuf:"bytes,1,opt,name=response,proto3" json:"response,omitempty"`
	// contains filtered or unexported fields
}

func (*HttpResponse_Header) Descriptor deprecated

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

Deprecated: Use HttpResponse_Header.ProtoReflect.Descriptor instead.

func (*HttpResponse_Header) GetResponse

func (x *HttpResponse_Header) GetResponse() *prototool.HttpResponse

func (*HttpResponse_Header) ProtoMessage

func (*HttpResponse_Header) ProtoMessage()

func (*HttpResponse_Header) ProtoReflect

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

func (*HttpResponse_Header) Reset

func (x *HttpResponse_Header) Reset()

func (*HttpResponse_Header) String

func (x *HttpResponse_Header) String() string

func (*HttpResponse_Header) Validate

func (m *HttpResponse_Header) Validate() error

Validate checks the field values on HttpResponse_Header with the rules defined in the proto definition for this message. If any rules are violated, the first error encountered is returned, or nil if there are no violations.

func (*HttpResponse_Header) ValidateAll

func (m *HttpResponse_Header) ValidateAll() error

ValidateAll checks the field values on HttpResponse_Header with the rules defined in the proto definition for this message. If any rules are violated, the result is a list of violation errors wrapped in HttpResponse_HeaderMultiError, or nil if none found.

type HttpResponse_HeaderMultiError

type HttpResponse_HeaderMultiError []error

HttpResponse_HeaderMultiError is an error wrapping multiple validation errors returned by HttpResponse_Header.ValidateAll() if the designated constraints aren't met.

func (HttpResponse_HeaderMultiError) AllErrors

func (m HttpResponse_HeaderMultiError) AllErrors() []error

AllErrors returns a list of validation violation errors.

func (HttpResponse_HeaderMultiError) Error

Error returns a concatenation of all the error messages it wraps.

type HttpResponse_HeaderValidationError

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

HttpResponse_HeaderValidationError is the validation error returned by HttpResponse_Header.Validate if the designated constraints aren't met.

func (HttpResponse_HeaderValidationError) Cause

Cause function returns cause value.

func (HttpResponse_HeaderValidationError) Error

Error satisfies the builtin error interface

func (HttpResponse_HeaderValidationError) ErrorName

ErrorName returns error name.

func (HttpResponse_HeaderValidationError) Field

Field function returns field value.

func (HttpResponse_HeaderValidationError) Key

Key function returns key value.

func (HttpResponse_HeaderValidationError) Reason

Reason function returns reason value.

type HttpResponse_Header_

type HttpResponse_Header_ struct {
	Header *HttpResponse_Header `protobuf:"bytes,1,opt,name=header,proto3,oneof"`
}

type HttpResponse_Trailer

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

func (*HttpResponse_Trailer) Descriptor deprecated

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

Deprecated: Use HttpResponse_Trailer.ProtoReflect.Descriptor instead.

func (*HttpResponse_Trailer) ProtoMessage

func (*HttpResponse_Trailer) ProtoMessage()

func (*HttpResponse_Trailer) ProtoReflect

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

func (*HttpResponse_Trailer) Reset

func (x *HttpResponse_Trailer) Reset()

func (*HttpResponse_Trailer) String

func (x *HttpResponse_Trailer) String() string

func (*HttpResponse_Trailer) Validate

func (m *HttpResponse_Trailer) Validate() error

Validate checks the field values on HttpResponse_Trailer with the rules defined in the proto definition for this message. If any rules are violated, the first error encountered is returned, or nil if there are no violations.

func (*HttpResponse_Trailer) ValidateAll

func (m *HttpResponse_Trailer) ValidateAll() error

ValidateAll checks the field values on HttpResponse_Trailer with the rules defined in the proto definition for this message. If any rules are violated, the result is a list of violation errors wrapped in HttpResponse_TrailerMultiError, or nil if none found.

type HttpResponse_TrailerMultiError

type HttpResponse_TrailerMultiError []error

HttpResponse_TrailerMultiError is an error wrapping multiple validation errors returned by HttpResponse_Trailer.ValidateAll() if the designated constraints aren't met.

func (HttpResponse_TrailerMultiError) AllErrors

func (m HttpResponse_TrailerMultiError) AllErrors() []error

AllErrors returns a list of validation violation errors.

func (HttpResponse_TrailerMultiError) Error

Error returns a concatenation of all the error messages it wraps.

type HttpResponse_TrailerValidationError

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

HttpResponse_TrailerValidationError is the validation error returned by HttpResponse_Trailer.Validate if the designated constraints aren't met.

func (HttpResponse_TrailerValidationError) Cause

Cause function returns cause value.

func (HttpResponse_TrailerValidationError) Error

Error satisfies the builtin error interface

func (HttpResponse_TrailerValidationError) ErrorName

ErrorName returns error name.

func (HttpResponse_TrailerValidationError) Field

Field function returns field value.

func (HttpResponse_TrailerValidationError) Key

Key function returns key value.

func (HttpResponse_TrailerValidationError) Reason

Reason function returns reason value.

type HttpResponse_Trailer_

type HttpResponse_Trailer_ struct {
	Trailer *HttpResponse_Trailer `protobuf:"bytes,3,opt,name=trailer,proto3,oneof"`
}

type HttpResponse_UpgradeData added in v15.1.0

type HttpResponse_UpgradeData struct {
	Data []byte `protobuf:"bytes,1,opt,name=data,proto3" json:"data,omitempty"`
	// contains filtered or unexported fields
}

func (*HttpResponse_UpgradeData) Descriptor deprecated added in v15.1.0

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

Deprecated: Use HttpResponse_UpgradeData.ProtoReflect.Descriptor instead.

func (*HttpResponse_UpgradeData) GetData added in v15.1.0

func (x *HttpResponse_UpgradeData) GetData() []byte

func (*HttpResponse_UpgradeData) ProtoMessage added in v15.1.0

func (*HttpResponse_UpgradeData) ProtoMessage()

func (*HttpResponse_UpgradeData) ProtoReflect added in v15.1.0

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

func (*HttpResponse_UpgradeData) Reset added in v15.1.0

func (x *HttpResponse_UpgradeData) Reset()

func (*HttpResponse_UpgradeData) String added in v15.1.0

func (x *HttpResponse_UpgradeData) String() string

func (*HttpResponse_UpgradeData) Validate added in v15.1.0

func (m *HttpResponse_UpgradeData) Validate() error

Validate checks the field values on HttpResponse_UpgradeData with the rules defined in the proto definition for this message. If any rules are violated, the first error encountered is returned, or nil if there are no violations.

func (*HttpResponse_UpgradeData) ValidateAll added in v15.1.0

func (m *HttpResponse_UpgradeData) ValidateAll() error

ValidateAll checks the field values on HttpResponse_UpgradeData with the rules defined in the proto definition for this message. If any rules are violated, the result is a list of violation errors wrapped in HttpResponse_UpgradeDataMultiError, or nil if none found.

type HttpResponse_UpgradeDataMultiError added in v15.1.0

type HttpResponse_UpgradeDataMultiError []error

HttpResponse_UpgradeDataMultiError is an error wrapping multiple validation errors returned by HttpResponse_UpgradeData.ValidateAll() if the designated constraints aren't met.

func (HttpResponse_UpgradeDataMultiError) AllErrors added in v15.1.0

func (m HttpResponse_UpgradeDataMultiError) AllErrors() []error

AllErrors returns a list of validation violation errors.

func (HttpResponse_UpgradeDataMultiError) Error added in v15.1.0

Error returns a concatenation of all the error messages it wraps.

type HttpResponse_UpgradeDataValidationError added in v15.1.0

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

HttpResponse_UpgradeDataValidationError is the validation error returned by HttpResponse_UpgradeData.Validate if the designated constraints aren't met.

func (HttpResponse_UpgradeDataValidationError) Cause added in v15.1.0

Cause function returns cause value.

func (HttpResponse_UpgradeDataValidationError) Error added in v15.1.0

Error satisfies the builtin error interface

func (HttpResponse_UpgradeDataValidationError) ErrorName added in v15.1.0

ErrorName returns error name.

func (HttpResponse_UpgradeDataValidationError) Field added in v15.1.0

Field function returns field value.

func (HttpResponse_UpgradeDataValidationError) Key added in v15.1.0

Key function returns key value.

func (HttpResponse_UpgradeDataValidationError) Reason added in v15.1.0

Reason function returns reason value.

type HttpResponse_UpgradeData_ added in v15.1.0

type HttpResponse_UpgradeData_ struct {
	UpgradeData *HttpResponse_UpgradeData `protobuf:"bytes,4,opt,name=upgradeData,proto3,oneof"`
}

type InboundGrpcToOutboundHttp

type InboundGrpcToOutboundHttp struct {
	Log                   *zap.Logger
	HandleProcessingError HandleProcessingErrorFunc
	HandleIoError         HandleIoErrorFunc
	HttpDo                HttpDo
}

func (*InboundGrpcToOutboundHttp) Pipe

type InboundGrpcToOutboundHttpStream

type InboundGrpcToOutboundHttpStream interface {
	Send(*HttpResponse) error
	grpc.ServerStream
}

type InboundHttpToOutboundGrpc

type InboundHttpToOutboundGrpc struct {
	Log                   *zap.Logger
	HandleProcessingError HandleProcessingErrorFunc
	WriteErrorResponse    WriteErrorResponse
	MergeHeaders          MergeHeadersFunc
}

func (*InboundHttpToOutboundGrpc) Pipe

func (x *InboundHttpToOutboundGrpc) Pipe(outboundClient HttpRequestClient, w http.ResponseWriter, r *http.Request, headerExtra proto.Message)

type InboundStreamToOutboundStream

type InboundStreamToOutboundStream struct {
	PipeInboundToOutbound func() error
	PipeOutboundToInbound func() error
}

func (*InboundStreamToOutboundStream) Pipe

type InvalidTransitionCallback

type InvalidTransitionCallback func(from, to protoreflect.FieldNumber, allowed []protoreflect.FieldNumber, message proto.Message) error

InvalidTransitionCallback is a callback that is called when an invalid transition is attempted. 'message' is nil when 'to' is eofState.

type JWTAuther

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

func NewJWTAuther

func NewJWTAuther(secret []byte, jwtIssuer, jwtAudience string, loggerFromContext func(context.Context) *zap.Logger) *JWTAuther

func (*JWTAuther) StreamServerInterceptor

func (a *JWTAuther) StreamServerInterceptor(srv interface{}, stream grpc.ServerStream, info *grpc.StreamServerInfo, handler grpc.StreamHandler) error

StreamServerInterceptor returns a new stream server interceptors that performs per-request JWT auth.

func (*JWTAuther) UnaryServerInterceptor

func (a *JWTAuther) UnaryServerInterceptor(ctx context.Context, req interface{}, info *grpc.UnaryServerInfo, handler grpc.UnaryHandler) (interface{}, error)

UnaryServerInterceptor returns a new unary server interceptors that performs per-request JWT auth.

type JwtCredentials

type JwtCredentials struct {
	Secret   []byte
	Audience string
	Issuer   string
	Insecure bool
}

func (*JwtCredentials) GetRequestMetadata

func (c *JwtCredentials) GetRequestMetadata(ctx context.Context, uri ...string) (map[string]string, error)

func (*JwtCredentials) RequireTransportSecurity

func (c *JwtCredentials) RequireTransportSecurity() bool

type MergeHeadersFunc

type MergeHeadersFunc func(outboundResponse, inboundResponse http.Header)

type MessageCallback

type MessageCallback interface{}

MessageCallback is a function with signature func(message someConcreteProtoMessage) error someConcreteProtoMessage must be the type passed to NewStreamVisitor().

type Pool

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

func NewPool

func NewPool(log *zap.Logger, tlsCreds credentials.TransportCredentials, dialOpts ...grpc.DialOption) *Pool

func (*Pool) Close

func (p *Pool) Close() error

func (*Pool) Dial

func (p *Pool) Dial(ctx context.Context, targetUrl string) (PoolConn, error)

type PoolConn

type PoolConn interface {
	grpc.ClientConnInterface
	Done()
}

type RawCodec

type RawCodec struct {
}

RawCodec is a *raw* encoding.Codec. This codec treats a gRPC message frame as raw bytes.

func (RawCodec) Marshal

func (c RawCodec) Marshal(v interface{}) ([]byte, error)

func (RawCodec) Name

func (c RawCodec) Name() string

func (RawCodec) Unmarshal

func (c RawCodec) Unmarshal(data []byte, v interface{}) error

type RawCodecWithProtoFallback

type RawCodecWithProtoFallback struct {
}

RawCodecWithProtoFallback is a *raw* encoding.Codec. This codec treats a gRPC message as raw bytes if it's RawFrame and falls back to default proto encoding for other message types.

func (RawCodecWithProtoFallback) Marshal

func (c RawCodecWithProtoFallback) Marshal(v interface{}) ([]byte, error)

func (RawCodecWithProtoFallback) Name

func (RawCodecWithProtoFallback) Unmarshal

func (c RawCodecWithProtoFallback) Unmarshal(data []byte, v interface{}) error

type RawFrame

type RawFrame struct {
	Data []byte
}

type ServerLimiter

type ServerLimiter interface {
	// Allow should return true and consume one "limitable event" if the limit has not been exceeded. Otherwise, it returns false and does not count towards the limit
	Allow(ctx context.Context) bool
}

ServerLimiter defines the interface to perform server-side request rate limiting. Inspired by golang.org/x/time/rate.Limiter, but accepts a context

type ServerNoopMaxConnAgeStatsHandler added in v15.6.0

type ServerNoopMaxConnAgeStatsHandler struct {
}

func (ServerNoopMaxConnAgeStatsHandler) HandleConn added in v15.6.0

func (m ServerNoopMaxConnAgeStatsHandler) HandleConn(ctx context.Context, connStats stats.ConnStats)

func (ServerNoopMaxConnAgeStatsHandler) HandleRPC added in v15.6.0

func (m ServerNoopMaxConnAgeStatsHandler) HandleRPC(ctx context.Context, rpcStats stats.RPCStats)

func (ServerNoopMaxConnAgeStatsHandler) TagConn added in v15.6.0

func (ServerNoopMaxConnAgeStatsHandler) TagRPC added in v15.6.0

type Stream

type Stream interface {
	RecvMsg(m interface{}) error
}

Stream is a grpc.ServerStream or grpc.ClientStream.

type StreamVisitor

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

StreamVisitor allows to consume messages in a gRPC stream. Message order should follow the automata, defined on fields in a oneof group.

func HttpRequestStreamVisitor

func HttpRequestStreamVisitor() *StreamVisitor

func HttpResponseStreamVisitor

func HttpResponseStreamVisitor() *StreamVisitor

func NewStreamVisitor

func NewStreamVisitor(streamMessage proto.Message) (*StreamVisitor, error)

func (*StreamVisitor) Visit

func (s *StreamVisitor) Visit(stream Stream, opts ...StreamVisitorOption) error

type StreamVisitorOption

type StreamVisitorOption func(*config) error

StreamVisitorOption is an option for the visitor. Must return nil or an error, compatible with the gRPC status package.

func WithCallback

func WithCallback(transitionTo protoreflect.FieldNumber, cb MessageCallback) StreamVisitorOption

WithCallback registers cb to be called when entering transitionTo when parsing the stream. Only one callback can be registered per target

func WithEOFCallback

func WithEOFCallback(cb EOFCallback) StreamVisitorOption

WithEOFCallback sets a callback for end of stream.

func WithNotExpectingToGet

func WithNotExpectingToGet(code codes.Code, transitionTo ...protoreflect.FieldNumber) StreamVisitorOption

WithNotExpectingToGet is used to list fields that the caller is not expecting to get during this Visit() invocation.

func WithStartState

func WithStartState(startState protoreflect.FieldNumber) StreamVisitorOption

WithStartState allows to specify a custom automata start state. The visitor then acts as if it has just visited field with startState number.

type WriteErrorResponse added in v15.1.0

type WriteErrorResponse func(w http.ResponseWriter, r *http.Request, eResp *ErrResp)

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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