Use VersionedParams in "extensions" client.

This commit is contained in:
Wojciech Tyczynski
2015-11-26 10:40:45 +01:00
parent 1dc513d390
commit cdded4f011
13 changed files with 45 additions and 48 deletions

View File

@@ -32,8 +32,12 @@ var Codec = runtime.CodecFor(Scheme, "")
func init() {
Scheme.AddDefaultingFuncs(
func(obj *unversioned.ListOptions) {
obj.LabelSelector = unversioned.LabelSelector{labels.Everything()}
obj.FieldSelector = unversioned.FieldSelector{fields.Everything()}
if obj.LabelSelector.Selector == nil {
obj.LabelSelector = unversioned.LabelSelector{labels.Everything()}
}
if obj.FieldSelector.Selector == nil {
obj.FieldSelector = unversioned.FieldSelector{fields.Everything()}
}
},
// TODO: see about moving this into v1/defaults.go
func(obj *PodExecOptions) {
@@ -135,6 +139,28 @@ func init() {
*out = in.Selector.String()
return nil
},
func(in *unversioned.LabelSelector, out *unversioned.LabelSelector, s conversion.Scope) error {
if in.Selector == nil {
return nil
}
selector, err := labels.Parse(in.Selector.String())
if err != nil {
return err
}
out.Selector = selector
return nil
},
func(in *unversioned.FieldSelector, out *unversioned.FieldSelector, s conversion.Scope) error {
if in.Selector == nil {
return nil
}
selector, err := fields.ParseSelector(in.Selector.String())
if err != nil {
return err
}
out.Selector = selector
return nil
},
func(in *resource.Quantity, out *resource.Quantity, s conversion.Scope) error {
// Cannot deep copy these, because inf.Dec has unexported fields.
*out = *in.Copy()