...
1
16
17
18
19 package v1beta1
20
21 import (
22 v1beta1 "k8s.io/api/node/v1beta1"
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 RuntimeClassLister interface {
31
32
33 List(selector labels.Selector) (ret []*v1beta1.RuntimeClass, err error)
34
35
36 Get(name string) (*v1beta1.RuntimeClass, error)
37 RuntimeClassListerExpansion
38 }
39
40
41 type runtimeClassLister struct {
42 indexer cache.Indexer
43 }
44
45
46 func NewRuntimeClassLister(indexer cache.Indexer) RuntimeClassLister {
47 return &runtimeClassLister{indexer: indexer}
48 }
49
50
51 func (s *runtimeClassLister) List(selector labels.Selector) (ret []*v1beta1.RuntimeClass, err error) {
52 err = cache.ListAll(s.indexer, selector, func(m interface{}) {
53 ret = append(ret, m.(*v1beta1.RuntimeClass))
54 })
55 return ret, err
56 }
57
58
59 func (s *runtimeClassLister) Get(name string) (*v1beta1.RuntimeClass, 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(v1beta1.Resource("runtimeclass"), name)
66 }
67 return obj.(*v1beta1.RuntimeClass), nil
68 }
69
View as plain text