dispatcherinternal

package
v0.0.11-dev Latest Latest
Warning

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

Go to latest
Published: Jul 17, 2026 License: Apache-2.0 Imports: 32 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ChannelBinding

type ChannelBinding struct {
	Transport                  mcpclient.ForwardingTransport
	Priority                   int
	Routable                   func() bool
	SupportsMCP                bool
	SupportsOAuth              bool
	SupportsSessionTermination bool
}

ChannelBinding describes routing behavior for a specific tunnel-service channel. SupportsMCP gates normal JSON-RPC forwarding; SupportsOAuth is kept on the main channel only because OAuth discovery is derived from the primary MCP server URL rather than arbitrary auxiliary channels.

type Processor

type Processor interface {
	Process(ctx context.Context, cmd controlplane.PolledCommand) error
}

Processor forwards polled control plane commands to the downstream MCP server.

func NewProcessor

func NewProcessor(p processorParams) (Processor, error)

NewProcessor constructs a Processor from channel bindings.

type QueueListener

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

QueueListener drains the polled command queue and forwards work to the processor using a bounded worker pool.

func NewQueueListener

func NewQueueListener(logger *slog.Logger, processor Processor, queue controlplane.PolledCommandQueue, mcpConfig *config.MCPConfig, meterProvider *sdkmetric.MeterProvider) (*QueueListener, error)

NewQueueListener constructs a QueueListener with a worker pool sized according to the MCP configuration.

func (*QueueListener) Start

func (l *QueueListener) Start(ctx context.Context)

Start begins draining the queue until the provided context is canceled or the queue is closed.

func (*QueueListener) Wait

func (l *QueueListener) Wait()

Wait blocks until the listener has stopped processing commands.

Jump to

Keyboard shortcuts

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