Merge branch 'master' into kd-live
This commit is contained in:
@ -15,6 +15,7 @@ import (
|
|||||||
"reflect"
|
"reflect"
|
||||||
"sort"
|
"sort"
|
||||||
"strconv"
|
"strconv"
|
||||||
|
"strings"
|
||||||
"sync"
|
"sync"
|
||||||
"sync/atomic"
|
"sync/atomic"
|
||||||
"syscall"
|
"syscall"
|
||||||
@ -129,6 +130,9 @@ func unmarshal[T any](val *T, src map[string]string) {
|
|||||||
if argval.Elem().Field(i).CanInt() {
|
if argval.Elem().Field(i).CanInt() {
|
||||||
num, _ := strconv.ParseInt(arg, 10, 0)
|
num, _ := strconv.ParseInt(arg, 10, 0)
|
||||||
argval.Elem().Field(i).SetInt(num)
|
argval.Elem().Field(i).SetInt(num)
|
||||||
|
} else if argval.Elem().Field(i).Kind() == reflect.Array || argval.Elem().Field(i).Kind() == reflect.Slice {
|
||||||
|
conv := strings.Split(arg, "\n")
|
||||||
|
argval.Elem().Field(i).Set(reflect.ValueOf(conv))
|
||||||
} else {
|
} else {
|
||||||
argval.Elem().Field(i).SetString(arg)
|
argval.Elem().Field(i).SetString(arg)
|
||||||
}
|
}
|
||||||
|
|||||||
@ -4,6 +4,7 @@ import (
|
|||||||
"context"
|
"context"
|
||||||
"fmt"
|
"fmt"
|
||||||
"reflect"
|
"reflect"
|
||||||
|
"strings"
|
||||||
"sync"
|
"sync"
|
||||||
|
|
||||||
"repositories.action2quare.com/ayo/houston/shared"
|
"repositories.action2quare.com/ayo/houston/shared"
|
||||||
@ -150,6 +151,12 @@ func marshal(argval reflect.Value, output map[string]string) map[string]string {
|
|||||||
marshal(argval.Field(i), output)
|
marshal(argval.Field(i), output)
|
||||||
} else if argval.Field(i).CanInt() {
|
} else if argval.Field(i).CanInt() {
|
||||||
output[argval.Type().Field(i).Name] = fmt.Sprintf("%d", argval.Field(i).Int())
|
output[argval.Type().Field(i).Name] = fmt.Sprintf("%d", argval.Field(i).Int())
|
||||||
|
} else if argval.Field(i).Kind() == reflect.Array || argval.Field(i).Kind() == reflect.Slice {
|
||||||
|
var conv []string
|
||||||
|
for i := 0; i < argval.Field(i).Len(); i++ {
|
||||||
|
conv = append(conv, argval.Field(i).Index(i).String())
|
||||||
|
}
|
||||||
|
output[argval.Type().Field(i).Name] = strings.Join(conv, "\n")
|
||||||
} else {
|
} else {
|
||||||
output[argval.Type().Field(i).Name] = argval.Field(i).String()
|
output[argval.Type().Field(i).Name] = argval.Field(i).String()
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user