...
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 api "k8s.io/kubernetes/pkg/apis/core"
24 "k8s.io/kubernetes/pkg/printers"
25 printersinternal "k8s.io/kubernetes/pkg/printers/internalversion"
26 printerstorage "k8s.io/kubernetes/pkg/printers/storage"
27 "k8s.io/kubernetes/pkg/registry/core/podtemplate"
28 )
29
30
31 type REST struct {
32 *genericregistry.Store
33 }
34
35
36 func NewREST(optsGetter generic.RESTOptionsGetter) (*REST, error) {
37 store := &genericregistry.Store{
38 NewFunc: func() runtime.Object { return &api.PodTemplate{} },
39 NewListFunc: func() runtime.Object { return &api.PodTemplateList{} },
40 DefaultQualifiedResource: api.Resource("podtemplates"),
41 SingularQualifiedResource: api.Resource("podtemplate"),
42
43 CreateStrategy: podtemplate.Strategy,
44 UpdateStrategy: podtemplate.Strategy,
45 DeleteStrategy: podtemplate.Strategy,
46
47 ReturnDeletedObject: true,
48
49 TableConvertor: printerstorage.TableConvertor{TableGenerator: printers.NewTableGenerator().With(printersinternal.AddHandlers)},
50 }
51 options := &generic.StoreOptions{RESTOptions: optsGetter}
52 if err := store.CompleteWithOptions(options); err != nil {
53 return nil, err
54 }
55 return &REST{store}, nil
56 }
57
View as plain text