jsonvconfigmarshaller.go 721 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. package io
  2. import (
  3. "encoding/json"
  4. _ "fmt"
  5. "github.com/v2ray/v2ray-core"
  6. )
  7. type JsonVUser struct {
  8. id string `json:"id"`
  9. email string `json:"email"`
  10. }
  11. type JsonVConfig struct {
  12. RunAs string `json:"runas"`
  13. Port uint8 `json:"port"`
  14. Clients []JsonVUser `json:"users"`
  15. Protocol string `json:"protocol"`
  16. }
  17. type JsonVConfigUnmarshaller struct {
  18. }
  19. func StringToVUser(id string) (u core.VUser, err error) {
  20. return
  21. }
  22. func (*JsonVConfigUnmarshaller) Unmarshall(data []byte) (*core.VConfig, error) {
  23. var jsonConfig JsonVConfig
  24. err := json.Unmarshal(data, &jsonConfig)
  25. if err != nil {
  26. return nil, err
  27. }
  28. var vconfig = new(core.VConfig)
  29. vconfig.RunAs = core.VUser{}
  30. return vconfig, nil
  31. }