package externalversions
import "k8s.io/kube-aggregator/pkg/client/informers/externalversions"
Index ¶
- type GenericInformer
- type SharedInformerFactory
- func NewFilteredSharedInformerFactory(client clientset.Interface, defaultResync time.Duration, namespace string, tweakListOptions internalinterfaces.TweakListOptionsFunc) SharedInformerFactory
- func NewSharedInformerFactory(client clientset.Interface, defaultResync time.Duration) SharedInformerFactory
- func NewSharedInformerFactoryWithOptions(client clientset.Interface, defaultResync time.Duration, options ...SharedInformerOption) SharedInformerFactory
- type SharedInformerOption
- func WithCustomResyncConfig(resyncConfig map[v1.Object]time.Duration) SharedInformerOption
- func WithNamespace(namespace string) SharedInformerOption
- func WithTransform(transform cache.TransformFunc) SharedInformerOption
- func WithTweakListOptions(tweakListOptions internalinterfaces.TweakListOptionsFunc) SharedInformerOption
Types ¶
type GenericInformer ¶
type GenericInformer interface { Informer() cache.SharedIndexInformer Lister() cache.GenericLister }
GenericInformer is type of SharedIndexInformer which will locate and delegate to other sharedInformers based on type
type SharedInformerFactory ¶
type SharedInformerFactory interface { internalinterfaces.SharedInformerFactory // Start initializes all requested informers. They are handled in goroutines // which run until the stop channel gets closed. // Warning: Start does not block. When run in a go-routine, it will race with a later WaitForCacheSync. (stopCh <-chan struct{}) // Shutdown marks a factory as shutting down. At that point no new // informers can be started anymore and Start will return without // doing anything. // // In addition, Shutdown blocks until all goroutines have terminated. For that // to happen, the close channel(s) that they were started with must be closed, // either before Shutdown gets called or while it is waiting. // // Shutdown may be called multiple times, even concurrently. All such calls will // block until all goroutines have terminated. () // WaitForCacheSync blocks until all started informers' caches were synced // or the stop channel gets closed. (stopCh <-chan struct{}) map[reflect.Type]bool // ForResource gives generic access to a shared informer of the matching type. (resource schema.GroupVersionResource) (GenericInformer, error) // InformerFor returns the SharedIndexInformer for obj using an internal // client. (obj runtime.Object, newFunc internalinterfaces.NewInformerFunc) cache.SharedIndexInformer () apiregistration.Interface }
SharedInformerFactory provides shared informers for resources in all known API group versions.
It is typically used like this:
ctx, cancel := context.Background() defer cancel() factory := NewSharedInformerFactory(client, resyncPeriod) defer factory.WaitForStop() // Returns immediately if nothing was started. genericInformer := factory.ForResource(resource) typedInformer := factory.SomeAPIGroup().V1().SomeType() factory.Start(ctx.Done()) // Start processing these informers. synced := factory.WaitForCacheSync(ctx.Done()) for v, ok := range synced { if !ok { fmt.Fprintf(os.Stderr, "caches failed to sync: %v", v) return } } // Creating informers can also be created after Start, but then // Start must be called again: anotherGenericInformer := factory.ForResource(resource) factory.Start(ctx.Done())
func NewFilteredSharedInformerFactory ¶
func NewFilteredSharedInformerFactory(client clientset.Interface, defaultResync time.Duration, namespace string, tweakListOptions internalinterfaces.TweakListOptionsFunc) SharedInformerFactory
NewFilteredSharedInformerFactory constructs a new instance of sharedInformerFactory. Listers obtained via this SharedInformerFactory will be subject to the same filters as specified here. Deprecated: Please use NewSharedInformerFactoryWithOptions instead
func NewSharedInformerFactory ¶
func NewSharedInformerFactory(client clientset.Interface, defaultResync time.Duration) SharedInformerFactory
NewSharedInformerFactory constructs a new instance of sharedInformerFactory for all namespaces.
func NewSharedInformerFactoryWithOptions ¶
func NewSharedInformerFactoryWithOptions(client clientset.Interface, defaultResync time.Duration, options ...SharedInformerOption) SharedInformerFactory
NewSharedInformerFactoryWithOptions constructs a new instance of a SharedInformerFactory with additional options.
type SharedInformerOption ¶
type SharedInformerOption func(*sharedInformerFactory) *sharedInformerFactory
SharedInformerOption defines the functional option type for SharedInformerFactory.
func WithCustomResyncConfig ¶
func WithCustomResyncConfig(resyncConfig map[v1.Object]time.Duration) SharedInformerOption
WithCustomResyncConfig sets a custom resync period for the specified informer types.
func WithNamespace ¶
func WithNamespace(namespace string) SharedInformerOption
WithNamespace limits the SharedInformerFactory to the specified namespace.
func WithTransform ¶
func WithTransform(transform cache.TransformFunc) SharedInformerOption
WithTransform sets a transform on all informers.
func WithTweakListOptions ¶
func WithTweakListOptions(tweakListOptions internalinterfaces.TweakListOptionsFunc) SharedInformerOption
WithTweakListOptions sets a custom filter on all listers of the configured SharedInformerFactory.
Source Files ¶
factory.go generic.go
Directories ¶
- Version
- v0.32.2 (latest)
- Published
- Feb 13, 2025
- Platform
- linux/amd64
- Imports
- 13 packages
- Last checked
- 1 month ago –
Tools for package owners.