Skip to content

Commit f53e471

Browse files
authored
feat(sdk): delete qos (#131)
1 parent 2928cf0 commit f53e471

File tree

1 file changed

+25
-0
lines changed

1 file changed

+25
-0
lines changed

internal/sdk/cloudian/qos.go

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -158,3 +158,28 @@ func (client Client) GetQOS(ctx context.Context, user User, region string) (*Qua
158158
return nil, fmt.Errorf("GET quota unexpected status: %d", resp.StatusCode())
159159
}
160160
}
161+
162+
// DeleteQOS deletes QualityOfService limits for a Group or User, depending on the value of GroupID and UserID.
163+
// See SetQOS for details.
164+
func (client Client) DeleteQOS(ctx context.Context, user User, region string) error {
165+
params := make(map[string]string)
166+
if region != DefaultRegion {
167+
params["region"] = region
168+
}
169+
170+
resp, err := client.newRequest(ctx).
171+
SetQueryParam("userId", user.UserID).
172+
SetQueryParam("groupId", user.GroupID).
173+
SetQueryParams(params).
174+
Delete("/qos/limits")
175+
if err != nil {
176+
return err
177+
}
178+
179+
switch resp.StatusCode() {
180+
case 200:
181+
return nil
182+
default:
183+
return fmt.Errorf("DELETE quota unexpected status: %d", resp.StatusCode())
184+
}
185+
}

0 commit comments

Comments
 (0)