github.com/sereiner/library@v0.0.0-20200518095232-1fa3e640cc5f/mq/xmq/xmq.conf.go (about) 1 package xmq 2 3 import ( 4 "encoding/json" 5 "fmt" 6 7 "github.com/asaskevich/govalidator" 8 ) 9 10 type Conf struct { 11 Address string `json:"address" valid:"dialstring,required"` 12 } 13 14 func NewConf(j string) (*Conf, error) { 15 conf := Conf{} 16 err := json.Unmarshal([]byte(j), &conf) 17 if err != nil { 18 return nil, err 19 } 20 if b, err := govalidator.ValidateStruct(&conf); !b { 21 err = fmt.Errorf("xmq 配置文件有误:%v", err) 22 return nil, err 23 } 24 return &conf, nil 25 }