|
| 1 | +/* |
| 2 | +Copyright 2016 The Kubernetes Authors. |
| 3 | +
|
| 4 | +Licensed under the Apache License, Version 2.0 (the "License"); |
| 5 | +you may not use this file except in compliance with the License. |
| 6 | +You may obtain a copy of the License at |
| 7 | +
|
| 8 | + http://www.apache.org/licenses/LICENSE-2.0 |
| 9 | +
|
| 10 | +Unless required by applicable law or agreed to in writing, software |
| 11 | +distributed under the License is distributed on an "AS IS" BASIS, |
| 12 | +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| 13 | +See the License for the specific language governing permissions and |
| 14 | +limitations under the License. |
| 15 | +*/ |
| 16 | + |
| 17 | +// This file was automatically generated by lister-gen with arguments: --input-dirs=[k8s.io/kubernetes/pkg/api,k8s.io/kubernetes/pkg/api/v1,k8s.io/kubernetes/pkg/apis/abac,k8s.io/kubernetes/pkg/apis/abac/v0,k8s.io/kubernetes/pkg/apis/abac/v1beta1,k8s.io/kubernetes/pkg/apis/apps,k8s.io/kubernetes/pkg/apis/apps/v1beta1,k8s.io/kubernetes/pkg/apis/authentication,k8s.io/kubernetes/pkg/apis/authentication/v1beta1,k8s.io/kubernetes/pkg/apis/authorization,k8s.io/kubernetes/pkg/apis/authorization/v1beta1,k8s.io/kubernetes/pkg/apis/autoscaling,k8s.io/kubernetes/pkg/apis/autoscaling/v1,k8s.io/kubernetes/pkg/apis/batch,k8s.io/kubernetes/pkg/apis/batch/v1,k8s.io/kubernetes/pkg/apis/batch/v2alpha1,k8s.io/kubernetes/pkg/apis/certificates,k8s.io/kubernetes/pkg/apis/certificates/v1alpha1,k8s.io/kubernetes/pkg/apis/componentconfig,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,k8s.io/kubernetes/pkg/apis/extensions,k8s.io/kubernetes/pkg/apis/extensions/v1beta1,k8s.io/kubernetes/pkg/apis/imagepolicy,k8s.io/kubernetes/pkg/apis/imagepolicy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy,k8s.io/kubernetes/pkg/apis/policy/v1alpha1,k8s.io/kubernetes/pkg/apis/policy/v1beta1,k8s.io/kubernetes/pkg/apis/rbac,k8s.io/kubernetes/pkg/apis/rbac/v1alpha1,k8s.io/kubernetes/pkg/apis/storage,k8s.io/kubernetes/pkg/apis/storage/v1beta1] |
| 18 | + |
| 19 | +package internalversion |
| 20 | + |
| 21 | +import ( |
| 22 | + "k8s.io/kubernetes/pkg/api/errors" |
| 23 | + policy "k8s.io/kubernetes/pkg/apis/policy" |
| 24 | + "k8s.io/kubernetes/pkg/client/cache" |
| 25 | + "k8s.io/kubernetes/pkg/labels" |
| 26 | +) |
| 27 | + |
| 28 | +// EvictionLister helps list Evictions. |
| 29 | +type EvictionLister interface { |
| 30 | + // List lists all Evictions in the indexer. |
| 31 | + List(selector labels.Selector) (ret []*policy.Eviction, err error) |
| 32 | + // Evictions returns an object that can list and get Evictions. |
| 33 | + Evictions(namespace string) EvictionNamespaceLister |
| 34 | + EvictionListerExpansion |
| 35 | +} |
| 36 | + |
| 37 | +// evictionLister implements the EvictionLister interface. |
| 38 | +type evictionLister struct { |
| 39 | + indexer cache.Indexer |
| 40 | +} |
| 41 | + |
| 42 | +// NewEvictionLister returns a new EvictionLister. |
| 43 | +func NewEvictionLister(indexer cache.Indexer) EvictionLister { |
| 44 | + return &evictionLister{indexer: indexer} |
| 45 | +} |
| 46 | + |
| 47 | +// List lists all Evictions in the indexer. |
| 48 | +func (s *evictionLister) List(selector labels.Selector) (ret []*policy.Eviction, err error) { |
| 49 | + err = cache.ListAll(s.indexer, selector, func(m interface{}) { |
| 50 | + ret = append(ret, m.(*policy.Eviction)) |
| 51 | + }) |
| 52 | + return ret, err |
| 53 | +} |
| 54 | + |
| 55 | +// Evictions returns an object that can list and get Evictions. |
| 56 | +func (s *evictionLister) Evictions(namespace string) EvictionNamespaceLister { |
| 57 | + return evictionNamespaceLister{indexer: s.indexer, namespace: namespace} |
| 58 | +} |
| 59 | + |
| 60 | +// EvictionNamespaceLister helps list and get Evictions. |
| 61 | +type EvictionNamespaceLister interface { |
| 62 | + // List lists all Evictions in the indexer for a given namespace. |
| 63 | + List(selector labels.Selector) (ret []*policy.Eviction, err error) |
| 64 | + // Get retrieves the Eviction from the indexer for a given namespace and name. |
| 65 | + Get(name string) (*policy.Eviction, error) |
| 66 | + EvictionNamespaceListerExpansion |
| 67 | +} |
| 68 | + |
| 69 | +// evictionNamespaceLister implements the EvictionNamespaceLister |
| 70 | +// interface. |
| 71 | +type evictionNamespaceLister struct { |
| 72 | + indexer cache.Indexer |
| 73 | + namespace string |
| 74 | +} |
| 75 | + |
| 76 | +// List lists all Evictions in the indexer for a given namespace. |
| 77 | +func (s evictionNamespaceLister) List(selector labels.Selector) (ret []*policy.Eviction, err error) { |
| 78 | + err = cache.ListAllByNamespace(s.indexer, s.namespace, selector, func(m interface{}) { |
| 79 | + ret = append(ret, m.(*policy.Eviction)) |
| 80 | + }) |
| 81 | + return ret, err |
| 82 | +} |
| 83 | + |
| 84 | +// Get retrieves the Eviction from the indexer for a given namespace and name. |
| 85 | +func (s evictionNamespaceLister) Get(name string) (*policy.Eviction, error) { |
| 86 | + obj, exists, err := s.indexer.GetByKey(s.namespace + "/" + name) |
| 87 | + if err != nil { |
| 88 | + return nil, err |
| 89 | + } |
| 90 | + if !exists { |
| 91 | + return nil, errors.NewNotFound(policy.Resource("eviction"), name) |
| 92 | + } |
| 93 | + return obj.(*policy.Eviction), nil |
| 94 | +} |
0 commit comments