...
1
16
17
18
19 package v1beta2
20
21 import (
22 v1beta2 "k8s.io/api/flowcontrol/v1beta2"
23 "k8s.io/apimachinery/pkg/api/errors"
24 "k8s.io/apimachinery/pkg/labels"
25 "k8s.io/client-go/tools/cache"
26 )
27
28
29
30 type FlowSchemaLister interface {
31
32
33 List(selector labels.Selector) (ret []*v1beta2.FlowSchema, err error)
34
35
36 Get(name string) (*v1beta2.FlowSchema, error)
37 FlowSchemaListerExpansion
38 }
39
40
41 type flowSchemaLister struct {
42 indexer cache.Indexer
43 }
44
45
46 func NewFlowSchemaLister(indexer cache.Indexer) FlowSchemaLister {
47 return &flowSchemaLister{indexer: indexer}
48 }
49
50
51 func (s *flowSchemaLister) List(selector labels.Selector) (ret []*v1beta2.FlowSchema, err error) {
52 err = cache.ListAll(s.indexer, selector, func(m interface{}) {
53 ret = append(ret, m.(*v1beta2.FlowSchema))
54 })
55 return ret, err
56 }
57
58
59 func (s *flowSchemaLister) Get(name string) (*v1beta2.FlowSchema, error) {
60 obj, exists, err := s.indexer.GetByKey(name)
61 if err != nil {
62 return nil, err
63 }
64 if !exists {
65 return nil, errors.NewNotFound(v1beta2.Resource("flowschema"), name)
66 }
67 return obj.(*v1beta2.FlowSchema), nil
68 }
69
View as plain text