v1

package
v1.1.2 Latest Latest
Warning

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

Go to latest
Published: Jan 10, 2024 License: Apache-2.0 Imports: 21 Imported by: 3

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func FromAPIServiceHandlerToHandler

func FromAPIServiceHandlerToHandler(sync APIServiceHandler) generic.Handler

func RegisterAPIServiceGeneratingHandler

func RegisterAPIServiceGeneratingHandler(ctx context.Context, controller APIServiceController, apply apply.Apply,
	condition condition.Cond, name string, handler APIServiceGeneratingHandler, opts *generic.GeneratingHandlerOptions)

RegisterAPIServiceGeneratingHandler configures a APIServiceController to execute a APIServiceGeneratingHandler for every events observed, passing the returned objects to the provided apply.Apply. If a non-empty condition is provided, it will be updated in the status conditions for every handler execution

func RegisterAPIServiceStatusHandler

func RegisterAPIServiceStatusHandler(ctx context.Context, controller APIServiceController, condition condition.Cond, name string, handler APIServiceStatusHandler)

RegisterAPIServiceStatusHandler configures a APIServiceController to execute a APIServiceStatusHandler for every events observed. If a non-empty condition is provided, it will be updated in the status conditions for every handler execution

func UpdateAPIServiceDeepCopyOnChange

func UpdateAPIServiceDeepCopyOnChange(client APIServiceClient, obj *v1.APIService, handler func(obj *v1.APIService) (*v1.APIService, error)) (*v1.APIService, error)

Types

type APIServiceCache

type APIServiceCache interface {
	Get(name string) (*v1.APIService, error)
	List(selector labels.Selector) ([]*v1.APIService, error)

	AddIndexer(indexName string, indexer APIServiceIndexer)
	GetByIndex(indexName, key string) ([]*v1.APIService, error)
}

type APIServiceClient

type APIServiceClient interface {
	Create(*v1.APIService) (*v1.APIService, error)
	Update(*v1.APIService) (*v1.APIService, error)
	UpdateStatus(*v1.APIService) (*v1.APIService, error)
	Delete(name string, options *metav1.DeleteOptions) error
	Get(name string, options metav1.GetOptions) (*v1.APIService, error)
	List(opts metav1.ListOptions) (*v1.APIServiceList, error)
	Watch(opts metav1.ListOptions) (watch.Interface, error)
	Patch(name string, pt types.PatchType, data []byte, subresources ...string) (result *v1.APIService, err error)
}

type APIServiceController

type APIServiceController interface {
	generic.ControllerMeta
	APIServiceClient

	OnChange(ctx context.Context, name string, sync APIServiceHandler)
	OnRemove(ctx context.Context, name string, sync APIServiceHandler)
	Enqueue(name string)
	EnqueueAfter(name string, duration time.Duration)

	Cache() APIServiceCache
}

func NewAPIServiceController

func NewAPIServiceController(gvk schema.GroupVersionKind, resource string, namespaced bool, controller controller.SharedControllerFactory) APIServiceController

type APIServiceGeneratingHandler

type APIServiceGeneratingHandler func(obj *v1.APIService, status v1.APIServiceStatus) ([]runtime.Object, v1.APIServiceStatus, error)

APIServiceGeneratingHandler is the top-level handler that is executed for every APIService event. It extends APIServiceStatusHandler by a returning a slice of child objects to be passed to apply.Apply

type APIServiceHandler

type APIServiceHandler func(string, *v1.APIService) (*v1.APIService, error)

type APIServiceIndexer

type APIServiceIndexer func(obj *v1.APIService) ([]string, error)

type APIServiceStatusHandler

type APIServiceStatusHandler func(obj *v1.APIService, status v1.APIServiceStatus) (v1.APIServiceStatus, error)

APIServiceStatusHandler is executed for every added or modified APIService. Should return the new status to be updated

type Interface

type Interface interface {
	APIService() APIServiceController
}

func New

func New(controllerFactory controller.SharedControllerFactory) Interface

Jump to

Keyboard shortcuts

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