mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-08-03 01:06:27 +00:00
Minor cleanup in unstructured converter
This commit is contained in:
parent
58ec5cce28
commit
edb36d4df7
@ -98,14 +98,14 @@ func doRoundTrip(t *testing.T, group testapi.TestGroup, kind string) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
newUnstr := make(map[string]interface{})
|
newUnstr := make(map[string]interface{})
|
||||||
err = unstructured.NewConverter().ToUnstructured(item, &newUnstr)
|
err = unstructured.Converter.ToUnstructured(item, &newUnstr)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Errorf("ToUnstructured failed: %v", err)
|
t.Errorf("ToUnstructured failed: %v", err)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
newObj := reflect.New(reflect.TypeOf(item).Elem()).Interface().(runtime.Object)
|
newObj := reflect.New(reflect.TypeOf(item).Elem()).Interface().(runtime.Object)
|
||||||
err = unstructured.NewConverter().FromUnstructured(newUnstr, newObj)
|
err = unstructured.Converter.FromUnstructured(newUnstr, newObj)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Errorf("FromUnstructured failed: %v", err)
|
t.Errorf("FromUnstructured failed: %v", err)
|
||||||
return
|
return
|
||||||
@ -139,11 +139,11 @@ func BenchmarkToFromUnstructured(b *testing.B) {
|
|||||||
b.ResetTimer()
|
b.ResetTimer()
|
||||||
for i := 0; i < b.N; i++ {
|
for i := 0; i < b.N; i++ {
|
||||||
unstr := map[string]interface{}{}
|
unstr := map[string]interface{}{}
|
||||||
if err := unstructured.NewConverter().ToUnstructured(&items[i%size], &unstr); err != nil {
|
if err := unstructured.Converter.ToUnstructured(&items[i%size], &unstr); err != nil {
|
||||||
b.Fatalf("unexpected error: %v", err)
|
b.Fatalf("unexpected error: %v", err)
|
||||||
}
|
}
|
||||||
obj := v1.Pod{}
|
obj := v1.Pod{}
|
||||||
if err := unstructured.NewConverter().FromUnstructured(unstr, &obj); err != nil {
|
if err := unstructured.Converter.FromUnstructured(unstr, &obj); err != nil {
|
||||||
b.Fatalf("unexpected error: %v", err)
|
b.Fatalf("unexpected error: %v", err)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -57,18 +57,20 @@ var (
|
|||||||
unmarshalerType = reflect.TypeOf(new(encodingjson.Unmarshaler)).Elem()
|
unmarshalerType = reflect.TypeOf(new(encodingjson.Unmarshaler)).Elem()
|
||||||
mapStringInterfaceType = reflect.TypeOf(map[string]interface{}{})
|
mapStringInterfaceType = reflect.TypeOf(map[string]interface{}{})
|
||||||
fieldCache = newFieldsCache()
|
fieldCache = newFieldsCache()
|
||||||
|
Converter = newConverter()
|
||||||
|
|
||||||
)
|
)
|
||||||
|
|
||||||
// Converter knows how to convert betweek runtime.Object and
|
// ConverterImpl knows how to convert betweek runtime.Object and
|
||||||
// Unstructured in both ways.
|
// Unstructured in both ways.
|
||||||
type Converter struct {
|
type ConverterImpl struct {
|
||||||
}
|
}
|
||||||
|
|
||||||
func NewConverter() *Converter {
|
func newConverter() *ConverterImpl {
|
||||||
return &Converter{}
|
return &ConverterImpl{}
|
||||||
}
|
}
|
||||||
|
|
||||||
func (c *Converter) FromUnstructured(u map[string]interface{}, obj runtime.Object) error {
|
func (c *ConverterImpl) FromUnstructured(u map[string]interface{}, obj runtime.Object) error {
|
||||||
return fromUnstructured(reflect.ValueOf(u), reflect.ValueOf(obj).Elem())
|
return fromUnstructured(reflect.ValueOf(u), reflect.ValueOf(obj).Elem())
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -304,7 +306,7 @@ func interfaceFromUnstructured(sv, dv reflect.Value) error {
|
|||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (c *Converter) ToUnstructured(obj runtime.Object, u *map[string]interface{}) error {
|
func (c *ConverterImpl) ToUnstructured(obj runtime.Object, u *map[string]interface{}) error {
|
||||||
return toUnstructured(reflect.ValueOf(obj).Elem(), reflect.ValueOf(u).Elem())
|
return toUnstructured(reflect.ValueOf(obj).Elem(), reflect.ValueOf(u).Elem())
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -122,14 +122,14 @@ func doRoundTrip(t *testing.T, item runtime.Object) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
newUnstr := make(map[string]interface{})
|
newUnstr := make(map[string]interface{})
|
||||||
err = NewConverter().ToUnstructured(item, &newUnstr)
|
err = Converter.ToUnstructured(item, &newUnstr)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Errorf("ToUnstructured failed: %v", err)
|
t.Errorf("ToUnstructured failed: %v", err)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
newObj := reflect.New(reflect.TypeOf(item).Elem()).Interface().(runtime.Object)
|
newObj := reflect.New(reflect.TypeOf(item).Elem()).Interface().(runtime.Object)
|
||||||
err = NewConverter().FromUnstructured(newUnstr, newObj)
|
err = Converter.FromUnstructured(newUnstr, newObj)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Errorf("FromUnstructured failed: %v", err)
|
t.Errorf("FromUnstructured failed: %v", err)
|
||||||
return
|
return
|
||||||
@ -239,7 +239,7 @@ func doUnrecognized(t *testing.T, jsonData string, item runtime.Object, expected
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
newObj := reflect.New(reflect.TypeOf(item).Elem()).Interface().(runtime.Object)
|
newObj := reflect.New(reflect.TypeOf(item).Elem()).Interface().(runtime.Object)
|
||||||
err = NewConverter().FromUnstructured(unstr, newObj)
|
err = Converter.FromUnstructured(unstr, newObj)
|
||||||
if (err != nil) != (expectedErr != nil) {
|
if (err != nil) != (expectedErr != nil) {
|
||||||
t.Errorf("Unexpected error in FromUnstructured: %v, expected: %v", err, expectedErr)
|
t.Errorf("Unexpected error in FromUnstructured: %v, expected: %v", err, expectedErr)
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user