...

Package externalversions

import "sigs.k8s.io/gateway-api/pkg/client/informers/externalversions"
Overview
Index
Subdirectories

Overview ▾

type GenericInformer

GenericInformer is type of SharedIndexInformer which will locate and delegate to other sharedInformers based on type

type GenericInformer interface {
    Informer() cache.SharedIndexInformer
    Lister() cache.GenericLister
}

type SharedInformerFactory

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())
type SharedInformerFactory interface {
    internalinterfaces.SharedInformerFactory

    // Start initializes all requested informers. They are handled in goroutines
    // which run until the stop channel gets closed.
    Start(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.
    Shutdown()

    // WaitForCacheSync blocks until all started informers' caches were synced
    // or the stop channel gets closed.
    WaitForCacheSync(stopCh <-chan struct{}) map[reflect.Type]bool

    // ForResource gives generic access to a shared informer of the matching type.
    ForResource(resource schema.GroupVersionResource) (GenericInformer, error)

    // InformerFor returns the SharedIndexInformer for obj using an internal
    // client.
    InformerFor(obj runtime.Object, newFunc internalinterfaces.NewInformerFunc) cache.SharedIndexInformer

    Gateway() apis.Interface
}

func NewFilteredSharedInformerFactory

func NewFilteredSharedInformerFactory(client versioned.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 versioned.Interface, defaultResync time.Duration) SharedInformerFactory

NewSharedInformerFactory constructs a new instance of sharedInformerFactory for all namespaces.

func NewSharedInformerFactoryWithOptions

func NewSharedInformerFactoryWithOptions(client versioned.Interface, defaultResync time.Duration, options ...SharedInformerOption) SharedInformerFactory

NewSharedInformerFactoryWithOptions constructs a new instance of a SharedInformerFactory with additional options.

type SharedInformerOption

SharedInformerOption defines the functional option type for SharedInformerFactory.

type SharedInformerOption func(*sharedInformerFactory) *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 WithTweakListOptions

func WithTweakListOptions(tweakListOptions internalinterfaces.TweakListOptionsFunc) SharedInformerOption

WithTweakListOptions sets a custom filter on all listers of the configured SharedInformerFactory.

Subdirectories