func ExtractFromListOptions(opts interface{}) (labelSelector labels.Selector, fieldSelector fields.Selector, resourceVersion string) { var err error switch t := opts.(type) { case api.ListOptions: labelSelector = t.LabelSelector fieldSelector = t.FieldSelector resourceVersion = t.ResourceVersion case v1.ListOptions: labelSelector, err = labels.Parse(t.LabelSelector) if err != nil { panic(err) } fieldSelector, err = fields.ParseSelector(t.FieldSelector) if err != nil { panic(err) } resourceVersion = t.ResourceVersion default: panic(fmt.Errorf("expect a ListOptions")) } if labelSelector == nil { labelSelector = labels.Everything() } if fieldSelector == nil { fieldSelector = fields.Everything() } return labelSelector, fieldSelector, resourceVersion }
func Convert_string_To_labels_Selector(in *string, out *labels.Selector, s conversion.Scope) error { selector, err := labels.Parse(*in) if err != nil { return err } *out = selector return nil }