factory

package
v0.0.0-...-8762aa4 Latest Latest
Warning

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

Go to latest
Published: Apr 25, 2024 License: Apache-2.0 Imports: 24 Imported by: 0

Documentation

Overview

Package factory contains code used to create the router controller.

Index

Constants

View Source
const (
	DefaultResyncInterval = 30 * time.Minute
	ServiceNameIndex      = "service-name"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type RouterControllerFactory

type RouterControllerFactory struct {
	KClient       kclientset.Interface
	RClient       routeclientset.Interface
	ProjectClient projectclient.ProjectInterface

	ResyncInterval  time.Duration
	Namespace       string
	LabelSelector   string
	FieldSelector   string
	NamespaceLabels labels.Selector
	ProjectLabels   labels.Selector
	RouteModifierFn func(route *routev1.Route)
	// contains filtered or unexported fields
}

RouterControllerFactory initializes and manages the watches that drive a router controller. It supports optional scoping on Namespace, Labels, and Fields of routes. If Namespace is empty, it means "all namespaces".

func NewDefaultRouterControllerFactory

func NewDefaultRouterControllerFactory(rc routeclientset.Interface, pc projectclient.ProjectInterface, kc kclientset.Interface, watchEndpoints bool) *RouterControllerFactory

NewDefaultRouterControllerFactory initializes a default router controller factory.

func (*RouterControllerFactory) Create

func (f *RouterControllerFactory) Create(plugin router.Plugin, watchNodes bool, stopCh <-chan struct{}) *routercontroller.RouterController

Create begins listing and watching against the API server for the desired route and endpoint resources.

func (*RouterControllerFactory) CreateRoutesSharedInformer

func (f *RouterControllerFactory) CreateRoutesSharedInformer() kcache.SharedIndexInformer

Jump to

Keyboard shortcuts

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