gateway

package
v0.12.1 Latest Latest
Warning

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

Go to latest
Published: Nov 17, 2023 License: Apache-2.0 Imports: 79 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewLastKnownDetailsApplier added in v0.8.0

func NewLastKnownDetailsApplier(storageBackend storage.ClusterStore) func(srv interface{}, ss grpc.ServerStream, info *grpc.StreamServerInfo, handler grpc.StreamHandler) error

Types

type ConnectionHandler added in v0.5.4

type ConnectionHandler interface {
	HandleAgentConnection(context.Context, agentv1.ClientSet)
}

func MultiConnectionHandler added in v0.6.0

func MultiConnectionHandler(handlers ...ConnectionHandler) ConnectionHandler

type ConnectionHandlerFunc added in v0.6.0

type ConnectionHandlerFunc func(context.Context, agentv1.ClientSet)

func (ConnectionHandlerFunc) HandleAgentConnection added in v0.6.0

func (f ConnectionHandlerFunc) HandleAgentConnection(ctx context.Context, clientSet agentv1.ClientSet)

type DelegateServer added in v0.8.2

type DelegateServer struct {
	streamv1.UnsafeDelegateServer
	// contains filtered or unexported fields
}

func NewDelegateServer added in v0.8.2

func NewDelegateServer(clusterStore storage.ClusterStore, lg *slog.Logger) *DelegateServer

func (*DelegateServer) Broadcast added in v0.8.2

func (*DelegateServer) HandleAgentConnection added in v0.8.2

func (d *DelegateServer) HandleAgentConnection(ctx context.Context, clientSet agentv1.ClientSet)

func (*DelegateServer) Request added in v0.8.2

type Gateway

type Gateway struct {
	GatewayOptions
	// contains filtered or unexported fields
}

func NewGateway

func NewGateway(ctx context.Context, conf *config.GatewayConfig, pl plugins.LoaderInterface, opts ...GatewayOption) *Gateway

func (*Gateway) CapabilitiesStore

func (g *Gateway) CapabilitiesStore() capabilities.BackendStore

Implements management.CapabilitiesDataSource

func (*Gateway) GetClusterHealthStatus added in v0.6.0

func (g *Gateway) GetClusterHealthStatus(ref *corev1.Reference) (*corev1.HealthStatus, error)

Implements management.HealthStatusDataSource

func (*Gateway) ListenAndServe

func (g *Gateway) ListenAndServe(ctx context.Context) error

func (*Gateway) MustRegisterCollector

func (g *Gateway) MustRegisterCollector(collector prometheus.Collector)

func (*Gateway) StorageBackend

func (g *Gateway) StorageBackend() storage.Backend

Implements management.CoreDataSource

func (*Gateway) TLSConfig

func (g *Gateway) TLSConfig() *tls.Config

Implements management.CoreDataSource

func (*Gateway) WatchClusterHealthStatus added in v0.6.0

func (g *Gateway) WatchClusterHealthStatus(ctx context.Context) <-chan *corev1.ClusterHealthStatus

Implements management.HealthStatusDataSource

type GatewayGRPCServer added in v0.5.4

type GatewayGRPCServer struct {
	streamv1.UnsafeStreamServer
	// contains filtered or unexported fields
}

func NewGRPCServer added in v0.5.4

func NewGRPCServer(
	cfg *v1beta1.GatewayConfigSpec,
	lg *slog.Logger,
	opts ...grpc.ServerOption,
) *GatewayGRPCServer

func (*GatewayGRPCServer) ListenAndServe added in v0.5.4

func (s *GatewayGRPCServer) ListenAndServe(ctx context.Context) error

func (*GatewayGRPCServer) RegisterService added in v0.5.4

func (s *GatewayGRPCServer) RegisterService(desc *grpc.ServiceDesc, impl any)

type GatewayHTTPServer added in v0.5.4

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

func NewHTTPServer added in v0.5.4

func (*GatewayHTTPServer) ListenAndServe added in v0.5.4

func (s *GatewayHTTPServer) ListenAndServe(ctx context.Context) error

type GatewayOption

type GatewayOption func(*GatewayOptions)

func WithExtraUpdateHandlers added in v0.11.0

func WithExtraUpdateHandlers(handlers ...update.UpdateTypeHandler) GatewayOption

func WithLifecycler

func WithLifecycler(lc config.Lifecycler) GatewayOption

type GatewayOptions

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

type MetricsEndpointHandler

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

func NewMetricsEndpointHandler

func NewMetricsEndpointHandler(cfg v1beta1.MetricsSpec) *MetricsEndpointHandler

func (*MetricsEndpointHandler) Handler added in v0.6.0

func (h *MetricsEndpointHandler) Handler() http.Handler

type RatelimiterInterceptor added in v0.11.0

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

func NewRateLimiterInterceptor added in v0.11.0

func NewRateLimiterInterceptor(lg *slog.Logger, opts ...RatelimiterOption) *RatelimiterInterceptor

func (*RatelimiterInterceptor) StreamServerInterceptor added in v0.11.0

func (r *RatelimiterInterceptor) StreamServerInterceptor() grpc.StreamServerInterceptor

type RatelimiterOption added in v0.11.0

type RatelimiterOption func(*ratelimiterOptions)

func WithBurst added in v0.11.0

func WithBurst(burst int) RatelimiterOption

func WithRate added in v0.11.0

func WithRate(rate float64) RatelimiterOption

type StreamServer added in v0.5.4

type StreamServer struct {
	streamv1.UnimplementedStreamServer
	// contains filtered or unexported fields
}

func NewStreamServer added in v0.5.4

func NewStreamServer(
	handler ConnectionHandler,
	clusterStore storage.ClusterStore,
	metricsRegisterer prometheus.Registerer,
	lg *slog.Logger,
) *StreamServer

func (*StreamServer) Connect added in v0.5.4

func (s *StreamServer) Connect(stream streamv1.Stream_ConnectServer) error

func (*StreamServer) InternalServiceRegistrar added in v0.9.2

func (s *StreamServer) InternalServiceRegistrar() grpc.ServiceRegistrar

func (*StreamServer) OnPluginLoad added in v0.9.0

func (*StreamServer) RegisterService added in v0.5.4

func (s *StreamServer) RegisterService(desc *grpc.ServiceDesc, impl any)

Jump to

Keyboard shortcuts

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