2018-10-04 08:54:04 +00:00
|
|
|
package util
|
|
|
|
|
|
|
|
import (
|
2018-10-17 22:26:54 +00:00
|
|
|
"fmt"
|
|
|
|
"reflect"
|
2018-10-04 08:54:04 +00:00
|
|
|
"strings"
|
|
|
|
|
|
|
|
"github.com/coreos/go-semver/semver"
|
|
|
|
)
|
|
|
|
|
2018-10-17 22:26:54 +00:00
|
|
|
const (
|
|
|
|
WorkerThreads = 50
|
|
|
|
)
|
|
|
|
|
2018-10-04 08:54:04 +00:00
|
|
|
func StrToSemVer(version string) (*semver.Version, error) {
|
|
|
|
v, err := semver.NewVersion(strings.TrimPrefix(version, "v"))
|
|
|
|
if err != nil {
|
|
|
|
return nil, err
|
|
|
|
}
|
|
|
|
return v, nil
|
|
|
|
}
|
2018-10-17 22:26:54 +00:00
|
|
|
|
|
|
|
func GetObjectQueue(l interface{}) chan interface{} {
|
|
|
|
s := reflect.ValueOf(l)
|
|
|
|
c := make(chan interface{}, s.Len())
|
|
|
|
|
|
|
|
for i := 0; i < s.Len(); i++ {
|
|
|
|
c <- s.Index(i).Interface()
|
|
|
|
}
|
|
|
|
close(c)
|
|
|
|
return c
|
|
|
|
}
|
|
|
|
|
|
|
|
func ErrList(e []error) error {
|
|
|
|
if len(e) > 0 {
|
|
|
|
return fmt.Errorf("%v", e)
|
|
|
|
}
|
|
|
|
return nil
|
|
|
|
}
|