v2ray-core/io/config/json/json.go

38 lines
727 B
Go
Raw Normal View History

2015-09-09 15:39:06 +00:00
// Package json contains io library for VConfig in Json format.
package json
2015-09-05 15:48:38 +00:00
import (
2015-09-06 20:10:42 +00:00
"encoding/json"
_ "fmt"
2015-09-09 15:39:25 +00:00
2015-09-06 20:10:42 +00:00
"github.com/v2ray/v2ray-core"
2015-09-05 15:48:38 +00:00
)
type JsonVUser struct {
2015-09-06 20:10:42 +00:00
id string `json:"id"`
email string `json:"email"`
2015-09-05 15:48:38 +00:00
}
type JsonVConfig struct {
2015-09-06 20:10:42 +00:00
Port uint8 `json:"port"`
Clients []JsonVUser `json:"users"`
Protocol string `json:"protocol"`
2015-09-05 15:48:38 +00:00
}
type JsonVConfigUnmarshaller struct {
}
func StringToVUser(id string) (u core.VUser, err error) {
2015-09-06 20:10:42 +00:00
return
2015-09-05 15:48:38 +00:00
}
func (*JsonVConfigUnmarshaller) Unmarshall(data []byte) (*core.VConfig, error) {
2015-09-06 20:10:42 +00:00
var jsonConfig JsonVConfig
err := json.Unmarshal(data, &jsonConfig)
if err != nil {
return nil, err
}
var vconfig = new(core.VConfig)
return vconfig, nil
}