...
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/kubernetes/pkg/apis/apps"
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/apps/controllerrevision"
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 &apps.ControllerRevision{} },
39 NewListFunc: func() runtime.Object { return &apps.ControllerRevisionList{} },
40 DefaultQualifiedResource: apps.Resource("controllerrevisions"),
41 SingularQualifiedResource: apps.Resource("controllerrevision"),
42
43 CreateStrategy: controllerrevision.Strategy,
44 UpdateStrategy: controllerrevision.Strategy,
45 DeleteStrategy: controllerrevision.Strategy,
46
47 TableConvertor: printerstorage.TableConvertor{TableGenerator: printers.NewTableGenerator().With(printersinternal.AddHandlers)},
48 }
49 options := &generic.StoreOptions{RESTOptions: optsGetter}
50 if err := store.CompleteWithOptions(options); err != nil {
51 return nil, err
52 }
53 return &REST{store}, nil
54 }
55
View as plain text