...
1
16
17 package storage
18
19 import (
20 "k8s.io/apimachinery/pkg/runtime"
21 "k8s.io/apiserver/pkg/registry/generic"
22 genericregistry "k8s.io/apiserver/pkg/registry/generic/registry"
23 "k8s.io/apiserver/pkg/registry/rest"
24 api "k8s.io/kubernetes/pkg/apis/core"
25 "k8s.io/kubernetes/pkg/registry/core/limitrange"
26 )
27
28
29 type REST struct {
30 *genericregistry.Store
31 }
32
33
34 func NewREST(optsGetter generic.RESTOptionsGetter) (*REST, error) {
35 store := &genericregistry.Store{
36 NewFunc: func() runtime.Object { return &api.LimitRange{} },
37 NewListFunc: func() runtime.Object { return &api.LimitRangeList{} },
38 DefaultQualifiedResource: api.Resource("limitranges"),
39 SingularQualifiedResource: api.Resource("limitrange"),
40
41 CreateStrategy: limitrange.Strategy,
42 UpdateStrategy: limitrange.Strategy,
43 DeleteStrategy: limitrange.Strategy,
44
45
46 TableConvertor: rest.NewDefaultTableConvertor(api.Resource("limitranges")),
47 }
48 options := &generic.StoreOptions{RESTOptions: optsGetter}
49 if err := store.CompleteWithOptions(options); err != nil {
50 return nil, err
51 }
52 return &REST{store}, nil
53 }
54
55
56 var _ rest.ShortNamesProvider = &REST{}
57
58
59 func (r *REST) ShortNames() []string {
60 return []string{"limits"}
61 }
62
View as plain text