relayapi

package
v0.1.0-rc.39 Latest Latest
Warning

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

Go to latest
Published: Oct 3, 2026 License: MIT Imports: 10 Imported by: 0

Documentation

Overview

Package relayapi serves control's private API for relay processes.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewHandler

func NewHandler(config Config) (http.Handler, error)

NewHandler constructs the private relay service.

Types

type Config

type Config struct {
	Store          Store
	ClusterSecrets serviceapi.BearerSecrets
	LeaseDuration  time.Duration
	Now            func() time.Time
	Report         func(error)
}

type DirectClient

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

DirectClient executes private relay operations in-process for standalone.

func NewDirectClient

func NewDirectClient(config DirectConfig) (*DirectClient, error)

func (DirectClient) ClaimPublisherConnection

func (s DirectClient) ClaimPublisherConnection(
	ctx context.Context,
	publisherConnectionID relayv1.PublisherConnectionID,
	body relayv1.PublisherConnectionClaim,
) (relayv1.ClaimedPublisherConnection, error)

func (DirectClient) DisconnectPublisherConnection

func (s DirectClient) DisconnectPublisherConnection(
	ctx context.Context,
	publisherConnectionID relayv1.PublisherConnectionID,
	body relayv1.PublisherConnectionDisconnect,
) (relayv1.ClaimedPublisherConnection, error)

func (DirectClient) DrainRelay

func (s DirectClient) DrainRelay(
	ctx context.Context,
	relayID relayv1.RelayID,
	body relayv1.RelayDrainRequest,
) (relayv1.RelayLease, error)

func (DirectClient) GetRelayTransportCertificate

func (s DirectClient) GetRelayTransportCertificate(
	ctx context.Context,
	relayServiceID relayv1.RelayServiceID,
	params relayv1.GetRelayTransportCertificateParams,
) (relayv1.RelayTransportCertificate, error)

func (DirectClient) MarkPublisherConnectionReady

func (s DirectClient) MarkPublisherConnectionReady(
	ctx context.Context,
	publisherConnectionID relayv1.PublisherConnectionID,
	body relayv1.PublisherConnectionTransition,
) (relayv1.ClaimedPublisherConnection, error)

func (DirectClient) RegisterRelay

func (s DirectClient) RegisterRelay(ctx context.Context, body relayv1.RelayRegistration) (relayv1.RelayLease, error)

func (DirectClient) RenewRelay

func (s DirectClient) RenewRelay(
	ctx context.Context,
	relayID relayv1.RelayID,
	body relayv1.RelayRenewal,
) (relayv1.RelayLease, error)

type DirectConfig

type DirectConfig struct {
	Store         Store
	LeaseDuration time.Duration
	Now           func() time.Time
	Report        func(error)
}

Jump to

Keyboard shortcuts

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