github.com/qiniu/go-sdk/v7@v7.27.0/storagev2/apis/get_bucket_domains_v3/api.go (about) 1 // THIS FILE IS GENERATED BY api-generator, DO NOT EDIT DIRECTLY! 2 3 // 获取存储空间的域名列表 4 package get_bucket_domains_v3 5 6 import ( 7 "encoding/json" 8 9 credentials "github.com/qiniu/go-sdk/v7/storagev2/credentials" 10 errors "github.com/qiniu/go-sdk/v7/storagev2/errors" 11 ) 12 13 // 调用 API 所用的请求 14 type Request struct { 15 BucketName string // 要获取域名列表的目标空间名称 16 Credentials credentials.CredentialsProvider // 鉴权参数,用于生成鉴权凭证,如果为空,则使用 HTTPClientOptions 中的 CredentialsProvider 17 } 18 19 // 获取 API 所用的响应 20 type Response struct { 21 DomainInfos DomainInfos // 存储空间的域名信息列表 22 } 23 24 // 存储空间的域名信息 25 type DomainInfo struct { 26 Domain string // 域名 27 Bucket string // 存储空间名称 28 OwnerId int64 // 用户 UID 29 AutoRefresh bool // 是否自动刷新 30 CreatedTime int64 // 域名创建时间 31 UpdatedTime int64 // 域名更新时间 32 } 33 type jsonDomainInfo struct { 34 Domain string `json:"domain"` // 域名 35 Bucket string `json:"tbl"` // 存储空间名称 36 OwnerId int64 `json:"uid"` // 用户 UID 37 AutoRefresh bool `json:"refresh"` // 是否自动刷新 38 CreatedTime int64 `json:"ctime"` // 域名创建时间 39 UpdatedTime int64 `json:"utime"` // 域名更新时间 40 } 41 42 func (j *DomainInfo) MarshalJSON() ([]byte, error) { 43 if err := j.validate(); err != nil { 44 return nil, err 45 } 46 return json.Marshal(&jsonDomainInfo{Domain: j.Domain, Bucket: j.Bucket, OwnerId: j.OwnerId, AutoRefresh: j.AutoRefresh, CreatedTime: j.CreatedTime, UpdatedTime: j.UpdatedTime}) 47 } 48 49 func (j *DomainInfo) UnmarshalJSON(data []byte) error { 50 var nj jsonDomainInfo 51 if err := json.Unmarshal(data, &nj); err != nil { 52 return err 53 } 54 j.Domain = nj.Domain 55 j.Bucket = nj.Bucket 56 j.OwnerId = nj.OwnerId 57 j.AutoRefresh = nj.AutoRefresh 58 j.CreatedTime = nj.CreatedTime 59 j.UpdatedTime = nj.UpdatedTime 60 return nil 61 } 62 63 func (j *DomainInfo) validate() error { 64 if j.Domain == "" { 65 return errors.MissingRequiredFieldError{Name: "Domain"} 66 } 67 if j.Bucket == "" { 68 return errors.MissingRequiredFieldError{Name: "Bucket"} 69 } 70 if j.OwnerId == 0 { 71 return errors.MissingRequiredFieldError{Name: "OwnerId"} 72 } 73 if j.CreatedTime == 0 { 74 return errors.MissingRequiredFieldError{Name: "CreatedTime"} 75 } 76 if j.UpdatedTime == 0 { 77 return errors.MissingRequiredFieldError{Name: "UpdatedTime"} 78 } 79 return nil 80 } 81 82 // 存储空间的域名信息列表 83 type DomainInfos []DomainInfo 84 85 func (j *Response) MarshalJSON() ([]byte, error) { 86 return json.Marshal(j.DomainInfos) 87 } 88 89 func (j *Response) UnmarshalJSON(data []byte) error { 90 var array DomainInfos 91 if err := json.Unmarshal(data, &array); err != nil { 92 return err 93 } 94 j.DomainInfos = array 95 return nil 96 }