server

package
v0.9.9 Latest Latest
Warning

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

Go to latest
Published: Apr 21, 2021 License: Apache-2.0 Imports: 24 Imported by: 0

Documentation

Overview

Package server provides an implementation of a streaming xDS server.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type CallbackFuncs

type CallbackFuncs struct {
	StreamOpenFunc          func(context.Context, int64, string) error
	StreamClosedFunc        func(int64)
	DeltaStreamOpenFunc     func(context.Context, int64, string) error
	DeltaStreamClosedFunc   func(int64)
	StreamRequestFunc       func(int64, *discovery.DiscoveryRequest) error
	StreamResponseFunc      func(int64, *discovery.DiscoveryRequest, *discovery.DiscoveryResponse)
	StreamDeltaRequestFunc  func(int64, *discovery.DeltaDiscoveryRequest) error
	StreamDeltaResponseFunc func(int64, *discovery.DeltaDiscoveryRequest, *discovery.DeltaDiscoveryResponse)
	FetchRequestFunc        func(context.Context, *discovery.DiscoveryRequest) error
	FetchResponseFunc       func(*discovery.DiscoveryRequest, *discovery.DiscoveryResponse)
}

CallbackFuncs is a convenience type for implementing the Callbacks interface.

func (CallbackFuncs) OnDeltaStreamClosed

func (c CallbackFuncs) OnDeltaStreamClosed(streamID int64)

OnDeltaStreamClosed invokes DeltaStreamClosedFunc.

func (CallbackFuncs) OnDeltaStreamOpen

func (c CallbackFuncs) OnDeltaStreamOpen(ctx context.Context, streamID int64, typeURL string) error

OnDeltaStreamOpen invokes DeltaStreamOpenFunc.

func (CallbackFuncs) OnFetchRequest

func (c CallbackFuncs) OnFetchRequest(ctx context.Context, req *discovery.DiscoveryRequest) error

OnFetchRequest invokes FetchRequestFunc.

func (CallbackFuncs) OnFetchResponse

func (c CallbackFuncs) OnFetchResponse(req *discovery.DiscoveryRequest, resp *discovery.DiscoveryResponse)

OnFetchResponse invoked FetchResponseFunc.

func (CallbackFuncs) OnStreamClosed

func (c CallbackFuncs) OnStreamClosed(streamID int64)

OnStreamClosed invokes StreamClosedFunc.

func (CallbackFuncs) OnStreamDeltaRequest

func (c CallbackFuncs) OnStreamDeltaRequest(streamID int64, req *discovery.DeltaDiscoveryRequest) error

OnStreamDeltaRequest invokes StreamDeltaResponseFunc

func (CallbackFuncs) OnStreamDeltaResponse

func (c CallbackFuncs) OnStreamDeltaResponse(streamID int64, req *discovery.DeltaDiscoveryRequest, resp *discovery.DeltaDiscoveryResponse)

OnStreamDeltaResponse invokes StreamDeltaResponseFunc.

func (CallbackFuncs) OnStreamOpen

func (c CallbackFuncs) OnStreamOpen(ctx context.Context, streamID int64, typeURL string) error

OnStreamOpen invokes StreamOpenFunc.

func (CallbackFuncs) OnStreamRequest

func (c CallbackFuncs) OnStreamRequest(streamID int64, req *discovery.DiscoveryRequest) error

OnStreamRequest invokes StreamRequestFunc.

func (CallbackFuncs) OnStreamResponse

func (c CallbackFuncs) OnStreamResponse(streamID int64, req *discovery.DiscoveryRequest, resp *discovery.DiscoveryResponse)

OnStreamResponse invokes StreamResponseFunc.

type Callbacks

type Callbacks interface {
	rest.Callbacks
	sotw.Callbacks
	delta.Callbacks
}

Callbacks is a collection of callbacks inserted into the server operation. The callbacks are invoked synchronously.

type HTTPGateway

type HTTPGateway struct {
	// Log is an optional log for errors in response write
	Log log.Logger

	// Server is the underlying gRPC server
	Server Server
}

HTTPGateway is a custom implementation of [gRPC gateway](https://github.com/grpc-ecosystem/grpc-gateway) specialized to Envoy xDS API.

func (*HTTPGateway) ServeHTTP

func (h *HTTPGateway) ServeHTTP(req *http.Request) ([]byte, int, error)

type Server

Server is a collection of handlers for streaming discovery requests.

func NewServer

func NewServer(ctx context.Context, config cache.Cache, callbacks Callbacks) Server

NewServer creates handlers from a config watcher and callbacks.

func NewServerAdvanced

func NewServerAdvanced(restServer rest.Server, sotwServer sotw.Server, deltaServer delta.Server) Server

Jump to

Keyboard shortcuts

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