...
1
16
17
18
19 package v1beta1
20
21 import (
22 "context"
23 time "time"
24
25 storagev1beta1 "k8s.io/api/storage/v1beta1"
26 v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
27 runtime "k8s.io/apimachinery/pkg/runtime"
28 watch "k8s.io/apimachinery/pkg/watch"
29 internalinterfaces "k8s.io/client-go/informers/internalinterfaces"
30 kubernetes "k8s.io/client-go/kubernetes"
31 v1beta1 "k8s.io/client-go/listers/storage/v1beta1"
32 cache "k8s.io/client-go/tools/cache"
33 )
34
35
36
37 type VolumeAttachmentInformer interface {
38 Informer() cache.SharedIndexInformer
39 Lister() v1beta1.VolumeAttachmentLister
40 }
41
42 type volumeAttachmentInformer struct {
43 factory internalinterfaces.SharedInformerFactory
44 tweakListOptions internalinterfaces.TweakListOptionsFunc
45 }
46
47
48
49
50 func NewVolumeAttachmentInformer(client kubernetes.Interface, resyncPeriod time.Duration, indexers cache.Indexers) cache.SharedIndexInformer {
51 return NewFilteredVolumeAttachmentInformer(client, resyncPeriod, indexers, nil)
52 }
53
54
55
56
57 func NewFilteredVolumeAttachmentInformer(client kubernetes.Interface, resyncPeriod time.Duration, indexers cache.Indexers, tweakListOptions internalinterfaces.TweakListOptionsFunc) cache.SharedIndexInformer {
58 return cache.NewSharedIndexInformer(
59 &cache.ListWatch{
60 ListFunc: func(options v1.ListOptions) (runtime.Object, error) {
61 if tweakListOptions != nil {
62 tweakListOptions(&options)
63 }
64 return client.StorageV1beta1().VolumeAttachments().List(context.TODO(), options)
65 },
66 WatchFunc: func(options v1.ListOptions) (watch.Interface, error) {
67 if tweakListOptions != nil {
68 tweakListOptions(&options)
69 }
70 return client.StorageV1beta1().VolumeAttachments().Watch(context.TODO(), options)
71 },
72 },
73 &storagev1beta1.VolumeAttachment{},
74 resyncPeriod,
75 indexers,
76 )
77 }
78
79 func (f *volumeAttachmentInformer) defaultInformer(client kubernetes.Interface, resyncPeriod time.Duration) cache.SharedIndexInformer {
80 return NewFilteredVolumeAttachmentInformer(client, resyncPeriod, cache.Indexers{cache.NamespaceIndex: cache.MetaNamespaceIndexFunc}, f.tweakListOptions)
81 }
82
83 func (f *volumeAttachmentInformer) Informer() cache.SharedIndexInformer {
84 return f.factory.InformerFor(&storagev1beta1.VolumeAttachment{}, f.defaultInformer)
85 }
86
87 func (f *volumeAttachmentInformer) Lister() v1beta1.VolumeAttachmentLister {
88 return v1beta1.NewVolumeAttachmentLister(f.Informer().GetIndexer())
89 }
90
View as plain text