signaling_echo

package
v0.24.9 Latest Latest
Warning

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

Go to latest
Published: Feb 20, 2024 License: Apache-2.0 Imports: 19 Imported by: 0

Documentation

Index

Constants

View Source
const ConfigID = ControllerID

ConfigID is the string used to identify this config object.

View Source
const ControllerID = "alpha/signaling/echo"

ControllerID identifies the world object volume controller.

Variables

View Source
var File_github_com_aperturerobotics_bifrost_signaling_echo_echo_proto protoreflect.FileDescriptor
View Source
var Version = semver.MustParse("0.0.1")

Version is the version of the controller.

Functions

func NewFactory

func NewFactory(b bus.Bus) controller.Factory

NewFactory constructs the echo factory.

Types

type Config

type Config struct {

	// SignalingId is the incoming signaling ID to handle and echo messages.
	// Cannot be empty.
	SignalingId string `protobuf:"bytes,1,opt,name=signaling_id,json=signalingId,proto3" json:"signaling_id,omitempty"`
	// contains filtered or unexported fields
}

Config configures the echo controller.

func (*Config) CloneMessageVT

func (m *Config) CloneMessageVT() proto.Message

func (*Config) CloneVT

func (m *Config) CloneVT() *Config

func (*Config) Descriptor deprecated

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

Deprecated: Use Config.ProtoReflect.Descriptor instead.

func (*Config) EqualMessageVT

func (this *Config) EqualMessageVT(thatMsg proto.Message) bool

func (*Config) EqualVT

func (this *Config) EqualVT(that *Config) bool

func (*Config) EqualsConfig

func (c *Config) EqualsConfig(c2 config.Config) bool

EqualsConfig checks if the config is equal to another.

func (*Config) GetConfigID

func (c *Config) GetConfigID() string

GetConfigID returns the unique string for this configuration type. This string is stored with the encoded config.

func (*Config) GetSignalingId

func (x *Config) GetSignalingId() string

func (*Config) MarshalToSizedBufferVT

func (m *Config) MarshalToSizedBufferVT(dAtA []byte) (int, error)

func (*Config) MarshalToVT

func (m *Config) MarshalToVT(dAtA []byte) (int, error)

func (*Config) MarshalVT

func (m *Config) MarshalVT() (dAtA []byte, err error)

func (*Config) ProtoMessage

func (*Config) ProtoMessage()

func (*Config) ProtoReflect

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

func (*Config) Reset

func (x *Config) Reset()

func (*Config) SizeVT

func (m *Config) SizeVT() (n int)

func (*Config) String

func (x *Config) String() string

func (*Config) UnmarshalVT

func (m *Config) UnmarshalVT(dAtA []byte) error

func (*Config) Validate

func (c *Config) Validate() error

Validate validates the configuration. This is a cursory validation to see if the values "look correct."

type Controller

type Controller struct {
	*bus.BusController[*Config]
}

Controller implements the signaling echo controller.

Resolves HandleSignalPeer by echoing incoming messages.

func (*Controller) Close

func (c *Controller) Close() error

Close releases any resources used by the controller. Error indicates any issue encountered releasing.

func (*Controller) HandleDirective

func (c *Controller) 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. Any exceptional errors are returned for logging. It is safe to add a reference to the directive during this call.

type EchoResolver

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

EchoResolver resolves HandleSignalPeer by echoing data.

func NewEchoResolver

func NewEchoResolver(le *logrus.Entry, dir signaling.HandleSignalPeer) (*EchoResolver, error)

NewEchoResolver constructs a new dial resolver.

func (*EchoResolver) Resolve

func (r *EchoResolver) Resolve(ctx context.Context, handler directive.ResolverHandler) error

type MountedStreamHandler

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

MountedStreamHandler implements the mounted stream handler.

func NewMountedStreamHandler

func NewMountedStreamHandler(le *logrus.Entry, bus bus.Bus) (*MountedStreamHandler, error)

NewMountedStreamHandler constructs the mounted stream handler.

func (*MountedStreamHandler) HandleMountedStream

func (m *MountedStreamHandler) HandleMountedStream(
	ctx context.Context,
	strm link.MountedStream,
) error

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.

Jump to

Keyboard shortcuts

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