enterprise

package
v1.8.23 Latest Latest
Warning

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

Go to latest
Published: Dec 1, 2021 License: Apache-2.0 Imports: 33 Imported by: 0

Documentation

Index

Constants

View Source
const RateLimitConfigType = resource.TypePrefix + "/glooe.solo.io.RateLimitConfig"

Variables

View Source
var File_github_com_solo_io_gloo_projects_gloo_api_v1_enterprise_ratelimit_proto protoreflect.FileDescriptor
View Source
var RateLimitConfigTypeRecord = client.NewTypeRecord(
	RateLimitConfigType,

	func() cache.ResourceProto { return &RateLimitConfig{} },

	func(r cache.ResourceProto) cache.Resource {
		return &RateLimitConfigXdsResourceWrapper{Resource: r.(*RateLimitConfig)}
	},
)

Define a type record. This is used by the generic client library.

Functions

func NewRateLimitConfigClient

func NewRateLimitConfigClient(nodeinfo *core.Node, typedApply ApplyRateLimitConfig) client.Client

func RegisterRateLimitDiscoveryServiceServer

func RegisterRateLimitDiscoveryServiceServer(s *grpc.Server, srv RateLimitDiscoveryServiceServer)

Types

type ApplyRateLimitConfig

type ApplyRateLimitConfig func(version string, resources []*RateLimitConfig) error

The apply functions receives resources and returns an error if they were applied correctly. In theory the configuration can become valid in the future (i.e. eventually consistent), but I don't think we need to worry about that now As our current use cases only have one configuration resource, so no interactions are expected.

type RateLimitConfig

type RateLimitConfig struct {

	// @solo-kit:resource.name
	Domain         string                    `protobuf:"bytes,1,opt,name=domain,proto3" json:"domain,omitempty"`
	Descriptors    []*v1alpha1.Descriptor    `protobuf:"bytes,2,rep,name=descriptors,proto3" json:"descriptors,omitempty"`
	SetDescriptors []*v1alpha1.SetDescriptor `protobuf:"bytes,3,rep,name=set_descriptors,json=setDescriptors,proto3" json:"set_descriptors,omitempty"`
	// contains filtered or unexported fields
}

@solo-kit:xds-service=RateLimitDiscoveryService @solo-kit:resource.no_references

func (*RateLimitConfig) Descriptor deprecated

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

Deprecated: Use RateLimitConfig.ProtoReflect.Descriptor instead.

func (*RateLimitConfig) Equal

func (m *RateLimitConfig) Equal(that interface{}) bool

Equal function

func (*RateLimitConfig) GetDescriptors

func (x *RateLimitConfig) GetDescriptors() []*v1alpha1.Descriptor

func (*RateLimitConfig) GetDomain

func (x *RateLimitConfig) GetDomain() string

func (*RateLimitConfig) GetSetDescriptors added in v1.6.0

func (x *RateLimitConfig) GetSetDescriptors() []*v1alpha1.SetDescriptor

func (*RateLimitConfig) Hash added in v1.2.13

func (m *RateLimitConfig) Hash(hasher hash.Hash64) (uint64, error)

Hash function

func (*RateLimitConfig) ProtoMessage

func (*RateLimitConfig) ProtoMessage()

func (*RateLimitConfig) ProtoReflect added in v1.6.0

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

func (*RateLimitConfig) Reset

func (x *RateLimitConfig) Reset()

func (*RateLimitConfig) String

func (x *RateLimitConfig) String() string

type RateLimitConfigXdsResourceWrapper

type RateLimitConfigXdsResourceWrapper struct {
	// TODO(yuval-k): This is public for mitchellh hashstructure to work properly. consider better alternatives.
	Resource *RateLimitConfig
}

Defined a resource - to be used by snapshot

func NewRateLimitConfigXdsResourceWrapper

func NewRateLimitConfigXdsResourceWrapper(resourceProto *RateLimitConfig) *RateLimitConfigXdsResourceWrapper

func (*RateLimitConfigXdsResourceWrapper) References

func (*RateLimitConfigXdsResourceWrapper) ResourceProto

func (*RateLimitConfigXdsResourceWrapper) Self

type RateLimitDiscoveryServiceClient

type RateLimitDiscoveryServiceClient interface {
	StreamRateLimitConfig(ctx context.Context, opts ...grpc.CallOption) (RateLimitDiscoveryService_StreamRateLimitConfigClient, error)
	DeltaRateLimitConfig(ctx context.Context, opts ...grpc.CallOption) (RateLimitDiscoveryService_DeltaRateLimitConfigClient, error)
	FetchRateLimitConfig(ctx context.Context, in *v2.DiscoveryRequest, opts ...grpc.CallOption) (*v2.DiscoveryResponse, error)
}

RateLimitDiscoveryServiceClient is the client API for RateLimitDiscoveryService service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.

type RateLimitDiscoveryServiceServer

type RateLimitDiscoveryServiceServer interface {
	StreamRateLimitConfig(RateLimitDiscoveryService_StreamRateLimitConfigServer) error
	DeltaRateLimitConfig(RateLimitDiscoveryService_DeltaRateLimitConfigServer) error
	FetchRateLimitConfig(context.Context, *v2.DiscoveryRequest) (*v2.DiscoveryResponse, error)
}

RateLimitDiscoveryServiceServer is the server API for RateLimitDiscoveryService service.

func NewRateLimitDiscoveryServiceServer

func NewRateLimitDiscoveryServiceServer(genericServer server.Server) RateLimitDiscoveryServiceServer

type RateLimitDiscoveryService_DeltaRateLimitConfigClient

type RateLimitDiscoveryService_DeltaRateLimitConfigClient interface {
	Send(*v2.DeltaDiscoveryRequest) error
	Recv() (*v2.DeltaDiscoveryResponse, error)
	grpc.ClientStream
}

type RateLimitDiscoveryService_DeltaRateLimitConfigServer

type RateLimitDiscoveryService_DeltaRateLimitConfigServer interface {
	Send(*v2.DeltaDiscoveryResponse) error
	Recv() (*v2.DeltaDiscoveryRequest, error)
	grpc.ServerStream
}

type RateLimitDiscoveryService_StreamRateLimitConfigClient

type RateLimitDiscoveryService_StreamRateLimitConfigClient interface {
	Send(*v2.DiscoveryRequest) error
	Recv() (*v2.DiscoveryResponse, error)
	grpc.ClientStream
}

type RateLimitDiscoveryService_StreamRateLimitConfigServer

type RateLimitDiscoveryService_StreamRateLimitConfigServer interface {
	Send(*v2.DiscoveryResponse) error
	Recv() (*v2.DiscoveryRequest, error)
	grpc.ServerStream
}

type UnimplementedRateLimitDiscoveryServiceServer

type UnimplementedRateLimitDiscoveryServiceServer struct {
}

UnimplementedRateLimitDiscoveryServiceServer can be embedded to have forward compatible implementations.

func (*UnimplementedRateLimitDiscoveryServiceServer) DeltaRateLimitConfig

func (*UnimplementedRateLimitDiscoveryServiceServer) FetchRateLimitConfig

func (*UnimplementedRateLimitDiscoveryServiceServer) StreamRateLimitConfig

Directories

Path Synopsis
options
dlp
extauth/v1/kube/apis/enterprise.gloo.solo.io/v1
Package v1 is the v1 version of the API.
Package v1 is the v1 version of the API.
extauth/v1/kube/client/clientset/versioned
This package has the automatically generated clientset.
This package has the automatically generated clientset.
extauth/v1/kube/client/clientset/versioned/fake
This package has the automatically generated fake clientset.
This package has the automatically generated fake clientset.
extauth/v1/kube/client/clientset/versioned/scheme
This package contains the scheme of the automatically generated clientset.
This package contains the scheme of the automatically generated clientset.
extauth/v1/kube/client/clientset/versioned/typed/enterprise.gloo.solo.io/v1
This package has the automatically generated typed clients.
This package has the automatically generated typed clients.
extauth/v1/kube/client/clientset/versioned/typed/enterprise.gloo.solo.io/v1/fake
Package fake has the automatically generated clients.
Package fake has the automatically generated clients.
jwt
waf

Jump to

Keyboard shortcuts

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