-
Notifications
You must be signed in to change notification settings - Fork 21
/
pgbouncerautoscaler.go
95 lines (79 loc) · 3.63 KB
/
pgbouncerautoscaler.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
/*
Copyright AppsCode Inc. and Contributors
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
// Code generated by lister-gen. DO NOT EDIT.
package v1alpha1
import (
v1alpha1 "kubedb.dev/apimachinery/apis/autoscaling/v1alpha1"
"k8s.io/apimachinery/pkg/api/errors"
"k8s.io/apimachinery/pkg/labels"
"k8s.io/client-go/tools/cache"
)
// PgBouncerAutoscalerLister helps list PgBouncerAutoscalers.
type PgBouncerAutoscalerLister interface {
// List lists all PgBouncerAutoscalers in the indexer.
List(selector labels.Selector) (ret []*v1alpha1.PgBouncerAutoscaler, err error)
// PgBouncerAutoscalers returns an object that can list and get PgBouncerAutoscalers.
PgBouncerAutoscalers(namespace string) PgBouncerAutoscalerNamespaceLister
PgBouncerAutoscalerListerExpansion
}
// pgBouncerAutoscalerLister implements the PgBouncerAutoscalerLister interface.
type pgBouncerAutoscalerLister struct {
indexer cache.Indexer
}
// NewPgBouncerAutoscalerLister returns a new PgBouncerAutoscalerLister.
func NewPgBouncerAutoscalerLister(indexer cache.Indexer) PgBouncerAutoscalerLister {
return &pgBouncerAutoscalerLister{indexer: indexer}
}
// List lists all PgBouncerAutoscalers in the indexer.
func (s *pgBouncerAutoscalerLister) List(selector labels.Selector) (ret []*v1alpha1.PgBouncerAutoscaler, err error) {
err = cache.ListAll(s.indexer, selector, func(m interface{}) {
ret = append(ret, m.(*v1alpha1.PgBouncerAutoscaler))
})
return ret, err
}
// PgBouncerAutoscalers returns an object that can list and get PgBouncerAutoscalers.
func (s *pgBouncerAutoscalerLister) PgBouncerAutoscalers(namespace string) PgBouncerAutoscalerNamespaceLister {
return pgBouncerAutoscalerNamespaceLister{indexer: s.indexer, namespace: namespace}
}
// PgBouncerAutoscalerNamespaceLister helps list and get PgBouncerAutoscalers.
type PgBouncerAutoscalerNamespaceLister interface {
// List lists all PgBouncerAutoscalers in the indexer for a given namespace.
List(selector labels.Selector) (ret []*v1alpha1.PgBouncerAutoscaler, err error)
// Get retrieves the PgBouncerAutoscaler from the indexer for a given namespace and name.
Get(name string) (*v1alpha1.PgBouncerAutoscaler, error)
PgBouncerAutoscalerNamespaceListerExpansion
}
// pgBouncerAutoscalerNamespaceLister implements the PgBouncerAutoscalerNamespaceLister
// interface.
type pgBouncerAutoscalerNamespaceLister struct {
indexer cache.Indexer
namespace string
}
// List lists all PgBouncerAutoscalers in the indexer for a given namespace.
func (s pgBouncerAutoscalerNamespaceLister) List(selector labels.Selector) (ret []*v1alpha1.PgBouncerAutoscaler, err error) {
err = cache.ListAllByNamespace(s.indexer, s.namespace, selector, func(m interface{}) {
ret = append(ret, m.(*v1alpha1.PgBouncerAutoscaler))
})
return ret, err
}
// Get retrieves the PgBouncerAutoscaler from the indexer for a given namespace and name.
func (s pgBouncerAutoscalerNamespaceLister) Get(name string) (*v1alpha1.PgBouncerAutoscaler, error) {
obj, exists, err := s.indexer.GetByKey(s.namespace + "/" + name)
if err != nil {
return nil, err
}
if !exists {
return nil, errors.NewNotFound(v1alpha1.Resource("pgbouncerautoscaler"), name)
}
return obj.(*v1alpha1.PgBouncerAutoscaler), nil
}