config

package
v1.10.0 Latest Latest
Warning

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

Go to latest
Published: Mar 8, 2022 License: Apache-2.0 Imports: 11 Imported by: 0

Documentation

Overview

This package is copied from Kubernetes project. https://github.com/kubernetes/kubernetes/blob/v1.23.0/pkg/proxy/config/config.go Added DestinationRuleHandler to listen to the events of the destination rule object

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type DestinationRuleConfig

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

DestinationRuleConfig tracks a set of destination rule configurations.

func NewDestinationRuleConfig

func NewDestinationRuleConfig(
	drInformer istioinformers.DestinationRuleInformer,
	resyncPeriod time.Duration) *DestinationRuleConfig

NewDestinationRuleConfig creates a new DestinationRuleConfig.

func (*DestinationRuleConfig) RegisterEventHandler

func (c *DestinationRuleConfig) RegisterEventHandler(handler DestinationRuleHandler)

RegisterEventHandler registers a handler which is called on every destination rule change.

func (*DestinationRuleConfig) Run

func (c *DestinationRuleConfig) Run(stopCh <-chan struct{})

Run starts the goroutine responsible for calling registered handlers.

type DestinationRuleHandler

type DestinationRuleHandler interface {
	// OnDestinationRuleAdd is called whenever creation of new destination rule
	// object is observed.
	OnDestinationRuleAdd(dr *istioapi.DestinationRule)
	// OnDestinationRuleUpdate is called whenever modification of an existing
	// destination rule object is observed.
	OnDestinationRuleUpdate(oldDr, dr *istioapi.DestinationRule)
	// OnDestinationDelete is called whenever deletion of an existing
	// destination rule object is observed.
	OnDestinationRuleDelete(dr *istioapi.DestinationRule)
	// OnDestinationSynced is called once all the initial event handlers were
	// called and the state is fully propagated to local cache.
	OnDestinationRuleSynced()
}

DestinationRuleHandler is an abstract interface of objects which receive notifications about node object changes.

type EndpointSliceConfig

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

EndpointSliceConfig tracks a set of endpoints configurations.

func NewEndpointSliceConfig

func NewEndpointSliceConfig(endpointSliceInformer discoveryinformers.EndpointSliceInformer, resyncPeriod time.Duration) *EndpointSliceConfig

NewEndpointSliceConfig creates a new EndpointSliceConfig.

func (*EndpointSliceConfig) RegisterEventHandler

func (c *EndpointSliceConfig) RegisterEventHandler(handler EndpointSliceHandler)

RegisterEventHandler registers a handler which is called on every endpoint slice change.

func (*EndpointSliceConfig) Run

func (c *EndpointSliceConfig) Run(stopCh <-chan struct{})

Run waits for cache synced and invokes handlers after syncing.

type EndpointSliceHandler

type EndpointSliceHandler interface {
	// OnEndpointSliceAdd is called whenever creation of new endpoint slice
	// object is observed.
	OnEndpointSliceAdd(endpointSlice *discovery.EndpointSlice)
	// OnEndpointSliceUpdate is called whenever modification of an existing
	// endpoint slice object is observed.
	OnEndpointSliceUpdate(oldEndpointSlice, newEndpointSlice *discovery.EndpointSlice)
	// OnEndpointSliceDelete is called whenever deletion of an existing
	// endpoint slice object is observed.
	OnEndpointSliceDelete(endpointSlice *discovery.EndpointSlice)
	// OnEndpointSlicesSynced is called once all the initial event handlers were
	// called and the state is fully propagated to local cache.
	OnEndpointSlicesSynced()
}

EndpointSliceHandler is an abstract interface of objects which receive notifications about endpoint slice object changes.

type EndpointsConfig

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

EndpointsConfig tracks a set of endpoints configurations.

func NewEndpointsConfig

func NewEndpointsConfig(endpointsInformer coreinformers.EndpointsInformer, resyncPeriod time.Duration) *EndpointsConfig

NewEndpointsConfig creates a new EndpointsConfig.

func (*EndpointsConfig) RegisterEventHandler

func (c *EndpointsConfig) RegisterEventHandler(handler EndpointsHandler)

RegisterEventHandler registers a handler which is called on every endpoints change.

func (*EndpointsConfig) Run

func (c *EndpointsConfig) Run(stopCh <-chan struct{})

Run waits for cache synced and invokes handlers after syncing.

type EndpointsHandler

type EndpointsHandler interface {
	// OnEndpointsAdd is called whenever creation of new endpoints object
	// is observed.
	OnEndpointsAdd(endpoints *v1.Endpoints)
	// OnEndpointsUpdate is called whenever modification of an existing
	// endpoints object is observed.
	OnEndpointsUpdate(oldEndpoints, endpoints *v1.Endpoints)
	// OnEndpointsDelete is called whenever deletion of an existing endpoints
	// object is observed.
	OnEndpointsDelete(endpoints *v1.Endpoints)
	// OnEndpointsSynced is called once all the initial event handlers were
	// called and the state is fully propagated to local cache.
	OnEndpointsSynced()
}

EndpointsHandler is an abstract interface of objects which receive notifications about endpoints object changes. This is not a required sub-interface of proxy.Provider, and proxy implementations should not implement it unless they can't handle EndpointSlices.

type NodeConfig

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

NodeConfig tracks a set of node configurations. It accepts "set", "add" and "remove" operations of node via channels, and invokes registered handlers on change.

func NewNodeConfig

func NewNodeConfig(nodeInformer coreinformers.NodeInformer, resyncPeriod time.Duration) *NodeConfig

NewNodeConfig creates a new NodeConfig.

func (*NodeConfig) RegisterEventHandler

func (c *NodeConfig) RegisterEventHandler(handler NodeHandler)

RegisterEventHandler registers a handler which is called on every node change.

func (*NodeConfig) Run

func (c *NodeConfig) Run(stopCh <-chan struct{})

Run starts the goroutine responsible for calling registered handlers.

type NodeHandler

type NodeHandler interface {
	// OnNodeAdd is called whenever creation of new node object
	// is observed.
	OnNodeAdd(node *v1.Node)
	// OnNodeUpdate is called whenever modification of an existing
	// node object is observed.
	OnNodeUpdate(oldNode, node *v1.Node)
	// OnNodeDelete is called whenever deletion of an existing node
	// object is observed.
	OnNodeDelete(node *v1.Node)
	// OnNodeSynced is called once all the initial event handlers were
	// called and the state is fully propagated to local cache.
	OnNodeSynced()
}

NodeHandler is an abstract interface of objects which receive notifications about node object changes.

type NoopEndpointSliceHandler

type NoopEndpointSliceHandler struct{}

NoopEndpointSliceHandler is a noop handler for proxiers that have not yet implemented a full EndpointSliceHandler.

func (*NoopEndpointSliceHandler) OnEndpointSliceAdd

func (*NoopEndpointSliceHandler) OnEndpointSliceAdd(endpointSlice *discovery.EndpointSlice)

OnEndpointSliceAdd is a noop handler for EndpointSlice creates.

func (*NoopEndpointSliceHandler) OnEndpointSliceDelete

func (*NoopEndpointSliceHandler) OnEndpointSliceDelete(endpointSlice *discovery.EndpointSlice)

OnEndpointSliceDelete is a noop handler for EndpointSlice deletes.

func (*NoopEndpointSliceHandler) OnEndpointSliceUpdate

func (*NoopEndpointSliceHandler) OnEndpointSliceUpdate(oldEndpointSlice, newEndpointSlice *discovery.EndpointSlice)

OnEndpointSliceUpdate is a noop handler for EndpointSlice updates.

func (*NoopEndpointSliceHandler) OnEndpointSlicesSynced

func (*NoopEndpointSliceHandler) OnEndpointSlicesSynced()

OnEndpointSlicesSynced is a noop handler for EndpointSlice syncs.

type NoopNodeHandler

type NoopNodeHandler struct{}

NoopNodeHandler is a noop handler for proxiers that have not yet implemented a full NodeHandler.

func (*NoopNodeHandler) OnNodeAdd

func (*NoopNodeHandler) OnNodeAdd(node *v1.Node)

OnNodeAdd is a noop handler for Node creates.

func (*NoopNodeHandler) OnNodeDelete

func (*NoopNodeHandler) OnNodeDelete(node *v1.Node)

OnNodeDelete is a noop handler for Node deletes.

func (*NoopNodeHandler) OnNodeSynced

func (*NoopNodeHandler) OnNodeSynced()

OnNodeSynced is a noop handler for Node syncs.

func (*NoopNodeHandler) OnNodeUpdate

func (*NoopNodeHandler) OnNodeUpdate(oldNode, node *v1.Node)

OnNodeUpdate is a noop handler for Node updates.

type ServiceConfig

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

ServiceConfig tracks a set of service configurations.

func NewServiceConfig

func NewServiceConfig(serviceInformer coreinformers.ServiceInformer, resyncPeriod time.Duration) *ServiceConfig

NewServiceConfig creates a new ServiceConfig.

func (*ServiceConfig) RegisterEventHandler

func (c *ServiceConfig) RegisterEventHandler(handler ServiceHandler)

RegisterEventHandler registers a handler which is called on every service change.

func (*ServiceConfig) Run

func (c *ServiceConfig) Run(stopCh <-chan struct{})

Run waits for cache synced and invokes handlers after syncing.

type ServiceHandler

type ServiceHandler interface {
	// OnServiceAdd is called whenever creation of new service object
	// is observed.
	OnServiceAdd(service *v1.Service)
	// OnServiceUpdate is called whenever modification of an existing
	// service object is observed.
	OnServiceUpdate(oldService, service *v1.Service)
	// OnServiceDelete is called whenever deletion of an existing service
	// object is observed.
	OnServiceDelete(service *v1.Service)
	// OnServiceSynced is called once all the initial event handlers were
	// called and the state is fully propagated to local cache.
	OnServiceSynced()
}

ServiceHandler is an abstract interface of objects which receive notifications about service object changes.

Jump to

Keyboard shortcuts

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