blob: cf82eef9357ae5bf5cbca129a52217e9efae7374 (
plain)
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
|
package query
import (
"encoding/xml"
"io"
"github.com/awslabs/aws-sdk-go/aws"
)
type xmlErrorResponse struct {
XMLName xml.Name `xml:"ErrorResponse"`
Code string `xml:"Error>Code"`
Message string `xml:"Error>Message"`
RequestID string `xml:"RequestId"`
}
func UnmarshalError(r *aws.Request) {
defer r.HTTPResponse.Body.Close()
resp := &xmlErrorResponse{}
err := xml.NewDecoder(r.HTTPResponse.Body).Decode(resp)
if err != nil && err != io.EOF {
r.Error = err
} else {
r.Error = aws.APIError{
StatusCode: r.HTTPResponse.StatusCode,
Code: resp.Code,
Message: resp.Message,
}
}
}
|