@@ -39,18 +39,29 @@ type ElasticsearchClusterInformer interface {
39
39
40
40
type elasticsearchClusterInformer struct {
41
41
factory internalinterfaces.SharedInformerFactory
42
+ filter internalinterfaces.FilterFunc
42
43
}
43
44
44
45
// NewElasticsearchClusterInformer constructs a new informer for ElasticsearchCluster type.
45
46
// Always prefer using an informer factory to get a shared informer instead of getting an independent
46
47
// one. This reduces memory footprint and number of connections to the server.
47
48
func NewElasticsearchClusterInformer (client clientset_internalversion.Interface , namespace string , resyncPeriod time.Duration , indexers cache.Indexers ) cache.SharedIndexInformer {
49
+ filter := internalinterfaces .NamespaceFilter (namespace )
50
+ return NewFilteredElasticsearchClusterInformer (client , filter , resyncPeriod , indexers )
51
+ }
52
+
53
+ // NewFilteredElasticsearchClusterInformer constructs a new informer for ElasticsearchCluster type.
54
+ // Always prefer using an informer factory to get a shared informer instead of getting an independent
55
+ // one. This reduces memory footprint and number of connections to the server.
56
+ func NewFilteredElasticsearchClusterInformer (client clientset_internalversion.Interface , filter internalinterfaces.FilterFunc , resyncPeriod time.Duration , indexers cache.Indexers ) cache.SharedIndexInformer {
48
57
return cache .NewSharedIndexInformer (
49
58
& cache.ListWatch {
50
59
ListFunc : func (options v1.ListOptions ) (runtime.Object , error ) {
60
+ namespace := filter (& options )
51
61
return client .Navigator ().ElasticsearchClusters (namespace ).List (options )
52
62
},
53
63
WatchFunc : func (options v1.ListOptions ) (watch.Interface , error ) {
64
+ namespace := filter (& options )
54
65
return client .Navigator ().ElasticsearchClusters (namespace ).Watch (options )
55
66
},
56
67
},
@@ -60,12 +71,12 @@ func NewElasticsearchClusterInformer(client clientset_internalversion.Interface,
60
71
)
61
72
}
62
73
63
- func defaultElasticsearchClusterInformer (client clientset_internalversion.Interface , resyncPeriod time.Duration ) cache.SharedIndexInformer {
64
- return NewElasticsearchClusterInformer (client , v1 . NamespaceAll , resyncPeriod , cache.Indexers {cache .NamespaceIndex : cache .MetaNamespaceIndexFunc })
74
+ func ( f * elasticsearchClusterInformer ) defaultInformer (client clientset_internalversion.Interface , resyncPeriod time.Duration ) cache.SharedIndexInformer {
75
+ return NewFilteredElasticsearchClusterInformer (client , f . filter , resyncPeriod , cache.Indexers {cache .NamespaceIndex : cache .MetaNamespaceIndexFunc })
65
76
}
66
77
67
78
func (f * elasticsearchClusterInformer ) Informer () cache.SharedIndexInformer {
68
- return f .factory .InformerFor (& navigator.ElasticsearchCluster {}, defaultElasticsearchClusterInformer )
79
+ return f .factory .InformerFor (& navigator.ElasticsearchCluster {}, f . defaultInformer )
69
80
}
70
81
71
82
func (f * elasticsearchClusterInformer ) Lister () internalversion.ElasticsearchClusterLister {
0 commit comments