Documentation
¶
Index ¶
- Variables
- type Config
- func (*Config) Descriptor() ([]byte, []int)deprecated
- func (this *Config) EqualVT(that *Config) bool
- func (x *Config) GetPeerIds() []string
- func (m *Config) MarshalToSizedBufferVT(dAtA []byte) (int, error)
- func (m *Config) MarshalToVT(dAtA []byte) (int, error)
- func (m *Config) MarshalVT() (dAtA []byte, err error)
- func (c *Config) ParsePeerIDs() ([]peer.ID, error)
- func (*Config) ProtoMessage()
- func (x *Config) ProtoReflect() protoreflect.Message
- func (x *Config) Reset()
- func (m *Config) SizeVT() (n int)
- func (x *Config) String() string
- func (m *Config) UnmarshalVT(dAtA []byte) error
- func (c *Config) Validate() error
- type RegisterFn
- type Server
- func (s *Server) Close() error
- func (s *Server) Execute(ctx context.Context) error
- func (s *Server) GetControllerInfo() *controller.Info
- func (s *Server) HandleDirective(ctx context.Context, di directive.Instance) ([]directive.Resolver, error)
- func (s *Server) HandleMountedStream(ctx context.Context, ms link.MountedStream) error
- func (s *Server) ResolveHandleMountedStream(ctx context.Context, di directive.Instance, dir link.HandleMountedStream) ([]directive.Resolver, error)
Constants ¶
This section is empty.
Variables ¶
var ( ErrInvalidLength = fmt.Errorf("proto: negative length found during unmarshaling") ErrIntOverflow = fmt.Errorf("proto: integer overflow") ErrUnexpectedEndOfGroup = fmt.Errorf("proto: unexpected end of group") )
var File_github_com_aperturerobotics_bifrost_stream_srpc_server_server_proto protoreflect.FileDescriptor
Functions ¶
This section is empty.
Types ¶
type Config ¶
type Config struct { // PeerIds are the list of peer IDs to listen on. // If empty, allows any incoming peer id w/ the protocol id. PeerIds []string `protobuf:"bytes,1,rep,name=peer_ids,json=peerIds,proto3" json:"peer_ids,omitempty"` // contains filtered or unexported fields }
Config configures the server for the srpc service.
func (*Config) Descriptor
deprecated
func (*Config) GetPeerIds ¶
func (*Config) MarshalToSizedBufferVT ¶
func (*Config) ParsePeerIDs ¶
ParsePeerIDs parses the peer ids field.
func (*Config) ProtoMessage ¶
func (*Config) ProtoMessage()
func (*Config) ProtoReflect ¶
func (x *Config) ProtoReflect() protoreflect.Message
func (*Config) UnmarshalVT ¶
type RegisterFn ¶
RegisterFn is a callback to register apis to a mux.
type Server ¶
type Server struct {
// contains filtered or unexported fields
}
Server handles incoming streams for a peer id.
func NewServer ¶
func NewServer( b bus.Bus, le *logrus.Entry, info *controller.Info, protocolIDs []protocol.ID, peerIDs []string, registerFns []RegisterFn, ) (*Server, error)
NewServer constructs a common srpc controller. If peerIDs and/or domainIDs are empty, matches any.
func (*Server) Close ¶
Close releases any resources used by the controller. Error indicates any issue encountered releasing.
func (*Server) Execute ¶
Execute executes the given controller. Returning nil ends execution. Returning an error triggers a retry with backoff.
func (*Server) GetControllerInfo ¶
func (s *Server) GetControllerInfo() *controller.Info
GetControllerInfo returns information about the controller.
func (*Server) HandleDirective ¶
func (s *Server) HandleDirective(ctx context.Context, di directive.Instance) ([]directive.Resolver, error)
HandleDirective asks if the handler can resolve the directive. If it can, it returns a resolver. If not, returns nil.
func (*Server) HandleMountedStream ¶
HandleMountedStream handles an incoming mounted stream. Any returned error indicates the stream should be closed. This function should return as soon as possible, and start additional goroutines to manage the lifecycle of the stream. Typically EstablishLink is asserted in HandleMountedStream.