// +build json package protocol import ( "errors" "github.com/v2ray/v2ray-core/common/uuid" ) type AccountJson struct { ID string `json:"id"` AlterIds uint16 `json:"alterId"` Username string `json:"user"` Password string `json:"pass"` } func (this *AccountJson) GetAccount() (Account, error) { if len(this.ID) > 0 { id, err := uuid.ParseString(this.ID) if err != nil { return nil, err } primaryID := NewID(id) alterIDs := NewAlterIDs(primaryID, this.AlterIds) return &VMessAccount{ ID: primaryID, AlterIDs: alterIDs, }, nil } return nil, errors.New("Protocol: Malformed account.") }