github.com/qiniu/go-sdk/v7@v7.27.0/iam/apis/modify_group/api.go (about) 1 // THIS FILE IS GENERATED BY api-generator, DO NOT EDIT DIRECTLY! 2 3 // 更新用户分组信息 4 package modify_group 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 Alias string // 子账号别名 16 Credentials credentials.CredentialsProvider // 鉴权参数,用于生成鉴权凭证,如果为空,则使用 HTTPClientOptions 中的 CredentialsProvider 17 NewAlias string // 新的用户分组别名,由 `A-Za-z0-9` 组成 18 Description string // 用户分组描述 19 } 20 21 // 修改用户分组参数 22 type ( 23 ModifyGroupParam = Request 24 jsonRequest struct { 25 NewAlias string `json:"alias,omitempty"` // 新的用户分组别名,由 `A-Za-z0-9` 组成 26 Description string `json:"description,omitempty"` // 用户分组描述 27 } 28 ) 29 30 func (j *Request) MarshalJSON() ([]byte, error) { 31 if err := j.validate(); err != nil { 32 return nil, err 33 } 34 return json.Marshal(&jsonRequest{NewAlias: j.NewAlias, Description: j.Description}) 35 } 36 37 func (j *Request) UnmarshalJSON(data []byte) error { 38 var nj jsonRequest 39 if err := json.Unmarshal(data, &nj); err != nil { 40 return err 41 } 42 j.NewAlias = nj.NewAlias 43 j.Description = nj.Description 44 return nil 45 } 46 47 func (j *Request) validate() error { 48 return nil 49 } 50 51 // 获取 API 所用的响应 52 type Response struct { 53 Data ModifyGroupData // 用户分组信息 54 } 55 56 // 用户分组信息 57 type Data struct { 58 Id string // 记录 ID 59 RootUid int64 // 根用户 uid 60 Alias string // 用户分组别名 61 Description string // 用户分组描述 62 Enabled bool // 用户分组是否启用 63 CreatedAt string // 用户分组创建时间 64 UpdatedAt string // 用户分组上次更新时间 65 } 66 67 // 返回的用户分组信息 68 type ( 69 ModifyGroupData = Data 70 jsonData struct { 71 Id string `json:"id"` // 记录 ID 72 RootUid int64 `json:"root_uid"` // 根用户 uid 73 Alias string `json:"alias"` // 用户分组别名 74 Description string `json:"description"` // 用户分组描述 75 Enabled bool `json:"enabled"` // 用户分组是否启用 76 CreatedAt string `json:"created_at"` // 用户分组创建时间 77 UpdatedAt string `json:"updated_at"` // 用户分组上次更新时间 78 } 79 ) 80 81 func (j *Data) MarshalJSON() ([]byte, error) { 82 if err := j.validate(); err != nil { 83 return nil, err 84 } 85 return json.Marshal(&jsonData{Id: j.Id, RootUid: j.RootUid, Alias: j.Alias, Description: j.Description, Enabled: j.Enabled, CreatedAt: j.CreatedAt, UpdatedAt: j.UpdatedAt}) 86 } 87 88 func (j *Data) UnmarshalJSON(data []byte) error { 89 var nj jsonData 90 if err := json.Unmarshal(data, &nj); err != nil { 91 return err 92 } 93 j.Id = nj.Id 94 j.RootUid = nj.RootUid 95 j.Alias = nj.Alias 96 j.Description = nj.Description 97 j.Enabled = nj.Enabled 98 j.CreatedAt = nj.CreatedAt 99 j.UpdatedAt = nj.UpdatedAt 100 return nil 101 } 102 103 func (j *Data) validate() error { 104 if j.Id == "" { 105 return errors.MissingRequiredFieldError{Name: "Id"} 106 } 107 if j.RootUid == 0 { 108 return errors.MissingRequiredFieldError{Name: "RootUid"} 109 } 110 if j.Alias == "" { 111 return errors.MissingRequiredFieldError{Name: "Alias"} 112 } 113 if j.Description == "" { 114 return errors.MissingRequiredFieldError{Name: "Description"} 115 } 116 if j.CreatedAt == "" { 117 return errors.MissingRequiredFieldError{Name: "CreatedAt"} 118 } 119 if j.UpdatedAt == "" { 120 return errors.MissingRequiredFieldError{Name: "UpdatedAt"} 121 } 122 return nil 123 } 124 125 // 返回的用户分组响应 126 type ( 127 ModifyGroupResp = Response 128 jsonResponse struct { 129 Data ModifyGroupData `json:"data"` // 用户分组信息 130 } 131 ) 132 133 func (j *Response) MarshalJSON() ([]byte, error) { 134 if err := j.validate(); err != nil { 135 return nil, err 136 } 137 return json.Marshal(&jsonResponse{Data: j.Data}) 138 } 139 140 func (j *Response) UnmarshalJSON(data []byte) error { 141 var nj jsonResponse 142 if err := json.Unmarshal(data, &nj); err != nil { 143 return err 144 } 145 j.Data = nj.Data 146 return nil 147 } 148 149 func (j *Response) validate() error { 150 if err := j.Data.validate(); err != nil { 151 return err 152 } 153 return nil 154 }