endpoint

package
v0.0.0-...-2a1d78e Latest Latest
Warning

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

Go to latest
Published: Nov 23, 2024 License: GPL-2.0 Imports: 10 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Register

func Register[Options any](registry *Registry, outboundType string, constructor ConstructorFunc[Options])

Types

type Adapter

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

func NewAdapter

func NewAdapter(endpointType string, endpointTag string, network []string, dependencies []string) Adapter

func NewAdapterWithDialerOptions

func NewAdapterWithDialerOptions(endpointType string, endpointTag string, network []string, dialOptions option.DialerOptions) Adapter

func (*Adapter) Dependencies

func (a *Adapter) Dependencies() []string

func (*Adapter) Network

func (a *Adapter) Network() []string

func (*Adapter) Tag

func (a *Adapter) Tag() string

func (*Adapter) Type

func (a *Adapter) Type() string

type ConstructorFunc

type ConstructorFunc[T any] func(ctx context.Context, router adapter.Router, logger log.ContextLogger, tag string, options T) (adapter.Endpoint, error)

type Manager

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

func NewManager

func NewManager(logger log.ContextLogger, registry adapter.EndpointRegistry) *Manager

func (*Manager) Close

func (m *Manager) Close() error

func (*Manager) Create

func (m *Manager) Create(ctx context.Context, router adapter.Router, logger log.ContextLogger, tag string, outboundType string, options any) error

func (*Manager) Endpoints

func (m *Manager) Endpoints() []adapter.Endpoint

func (*Manager) Get

func (m *Manager) Get(tag string) (adapter.Endpoint, bool)

func (*Manager) Remove

func (m *Manager) Remove(tag string) error

func (*Manager) Start

func (m *Manager) Start(stage adapter.StartStage) error

type Registry

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

func NewRegistry

func NewRegistry() *Registry

func (*Registry) Create

func (m *Registry) Create(ctx context.Context, router adapter.Router, logger log.ContextLogger, tag string, outboundType string, options any) (adapter.Endpoint, error)

func (*Registry) CreateOptions

func (m *Registry) CreateOptions(outboundType string) (any, bool)

Jump to

Keyboard shortcuts

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