...
1
16
17 package resourceclaimtemplate
18
19 import (
20 "context"
21 "errors"
22
23 "k8s.io/apimachinery/pkg/fields"
24 "k8s.io/apimachinery/pkg/labels"
25 "k8s.io/apimachinery/pkg/runtime"
26 "k8s.io/apimachinery/pkg/util/validation/field"
27 "k8s.io/apiserver/pkg/registry/generic"
28 "k8s.io/apiserver/pkg/storage/names"
29 "k8s.io/kubernetes/pkg/api/legacyscheme"
30 "k8s.io/kubernetes/pkg/apis/resource"
31 "k8s.io/kubernetes/pkg/apis/resource/validation"
32 )
33
34
35 type resourceClaimTemplateStrategy struct {
36 runtime.ObjectTyper
37 names.NameGenerator
38 }
39
40 var Strategy = resourceClaimTemplateStrategy{legacyscheme.Scheme, names.SimpleNameGenerator}
41
42 func (resourceClaimTemplateStrategy) NamespaceScoped() bool {
43 return true
44 }
45
46 func (resourceClaimTemplateStrategy) PrepareForCreate(ctx context.Context, obj runtime.Object) {
47 }
48
49 func (resourceClaimTemplateStrategy) Validate(ctx context.Context, obj runtime.Object) field.ErrorList {
50 resourceClaimTemplate := obj.(*resource.ResourceClaimTemplate)
51 return validation.ValidateClaimTemplate(resourceClaimTemplate)
52 }
53
54 func (resourceClaimTemplateStrategy) WarningsOnCreate(ctx context.Context, obj runtime.Object) []string {
55 return nil
56 }
57
58 func (resourceClaimTemplateStrategy) Canonicalize(obj runtime.Object) {
59 }
60
61 func (resourceClaimTemplateStrategy) AllowCreateOnUpdate() bool {
62 return false
63 }
64
65 func (resourceClaimTemplateStrategy) PrepareForUpdate(ctx context.Context, obj, old runtime.Object) {
66 }
67
68 func (resourceClaimTemplateStrategy) ValidateUpdate(ctx context.Context, obj, old runtime.Object) field.ErrorList {
69 errorList := validation.ValidateClaimTemplate(obj.(*resource.ResourceClaimTemplate))
70 return append(errorList, validation.ValidateClaimTemplateUpdate(obj.(*resource.ResourceClaimTemplate), old.(*resource.ResourceClaimTemplate))...)
71 }
72
73 func (resourceClaimTemplateStrategy) WarningsOnUpdate(ctx context.Context, obj, old runtime.Object) []string {
74 return nil
75 }
76
77 func (resourceClaimTemplateStrategy) AllowUnconditionalUpdate() bool {
78 return true
79 }
80
81
82 func GetAttrs(obj runtime.Object) (labels.Set, fields.Set, error) {
83 template, ok := obj.(*resource.ResourceClaimTemplate)
84 if !ok {
85 return nil, nil, errors.New("not a resourceclaimtemplate")
86 }
87 return labels.Set(template.Labels), toSelectableFields(template), nil
88 }
89
90
91 func toSelectableFields(template *resource.ResourceClaimTemplate) fields.Set {
92 fields := generic.ObjectMetaFieldsSet(&template.ObjectMeta, true)
93 return fields
94 }
95
View as plain text