message

package
v0.22.0 Latest Latest
Warning

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

Go to latest
Published: Aug 3, 2026 License: AGPL-3.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func HandleSubscription

func HandleSubscription[K comparable, V any](
	meta Metadata,
	subscription <-chan watchable.Snapshot[K, V],
	handle func(updateFunc Update[K, V], errChans chan error),
)

watchable.Map.Subscribe() (or .SubscribeSubset()), and calls the given function for each initial value in the map, and for any updates.

This is better than simply iterating over snapshot.Updates because it handles the case where the watchable.Map already contains entries before .Subscribe is called.

Types

type EnvoyResources

type EnvoyResources struct {
	Nodes watchable.Map[NodeKey, *xdstypes.NodeMetadata]
}

type GatewayAPIStatuses

GatewayAPIStatuses contains gateway API resources statuses

func (*GatewayAPIStatuses) Close

func (s *GatewayAPIStatuses) Close()

type Metadata

type Metadata struct {
	Runner  string
	Message string
}

type NodeKey

type NodeKey struct {
	ClusterName string
	NodeID      string
}

NodeKey is a unique identifier for an Envoy node in the format of "clusterName/nodeID"

type PolicyStatuses

type PolicyStatuses struct {
	ClientTrafficPolicyStatuses  watchable.Map[types.NamespacedName, *gwapiv1a2.PolicyStatus]
	BackendTrafficPolicyStatuses watchable.Map[types.NamespacedName, *gwapiv1a2.PolicyStatus]
	SecurityPolicyStatuses       watchable.Map[types.NamespacedName, *gwapiv1a2.PolicyStatus]
	BackendTLSPolicyStatuses     watchable.Map[types.NamespacedName, *gwapiv1a2.PolicyStatus]
}

PolicyStatuses contains policy related resources statuses

func (*PolicyStatuses) Close

func (p *PolicyStatuses) Close()

type ProviderResources

type ProviderResources struct {
	// GatewayAPIResources is a map from a GatewayClass name to
	// a group of gateway API and other related resources.
	GatewayAPIResources watchable.Map[string, *gatewayapi.ControllerResources]

	// EnvoyResources is a map from an xDS cluster name to a group
	// of resources for connected Envoy proxies.
	EnvoyResources EnvoyResources

	// GatewayAPIStatuses is a group of gateway api
	// resource statuses maps.
	GatewayAPIStatuses

	// PolicyStatuses is a group of policy statuses maps.
	PolicyStatuses
}

ProviderResources message

func (*ProviderResources) Close

func (p *ProviderResources) Close()

func (*ProviderResources) GetResources

func (p *ProviderResources) GetResources() []*gatewayapi.Resources

func (*ProviderResources) GetResourcesByGatewayClass

func (p *ProviderResources) GetResourcesByGatewayClass(name string) *gatewayapi.Resources

func (*ProviderResources) GetResourcesKey

func (p *ProviderResources) GetResourcesKey() string

type Update

type Update[K comparable, V any] watchable.Update[K, V]

type Xds

type XdsIR

type XdsIR struct {
	watchable.Map[string, *ir.Xds]
}

XdsIR message

Jump to

Keyboard shortcuts

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