-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathqueue_rewind.go
More file actions
33 lines (31 loc) · 776 Bytes
/
Copy pathqueue_rewind.go
File metadata and controls
33 lines (31 loc) · 776 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
package go_cmq
import (
"encoding/json"
"errors"
"time"
)
func (a *Account) RewindQueue(queueName string, startConsumeTime time.Time) (*BaseResponse, error) {
params := getCommonParams(reqCommon{
Action: "RewindQueue",
SecretId: a.SecretID,
SignatureMethod: a.SignatureMethod,
})
if queueName == "" {
return nil, errors.New("queueName is required")
}
if startConsumeTime.IsZero() {
return nil, errors.New("startConsumeTime is required")
}
params["queueName"] = queueName
params["startConsumeTime"] = startConsumeTime.UnixNano()
a.domain = a.QueueDomain
resp, e := a.getResponse(params)
if e != nil {
return nil, e
}
var res BaseResponse
if err := json.Unmarshal(resp, &res); err != nil {
return nil, err
}
return &res, nil
}