diff options
Diffstat (limited to 'vendor/github.com/aws/aws-sdk-go/private/protocol/query/build.go')
-rw-r--r-- | vendor/github.com/aws/aws-sdk-go/private/protocol/query/build.go | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/vendor/github.com/aws/aws-sdk-go/private/protocol/query/build.go b/vendor/github.com/aws/aws-sdk-go/private/protocol/query/build.go new file mode 100644 index 0000000..18169f0 --- /dev/null +++ b/vendor/github.com/aws/aws-sdk-go/private/protocol/query/build.go | |||
@@ -0,0 +1,36 @@ | |||
1 | // Package query provides serialization of AWS query requests, and responses. | ||
2 | package query | ||
3 | |||
4 | //go:generate go run -tags codegen ../../../models/protocol_tests/generate.go ../../../models/protocol_tests/input/query.json build_test.go | ||
5 | |||
6 | import ( | ||
7 | "net/url" | ||
8 | |||
9 | "github.com/aws/aws-sdk-go/aws/awserr" | ||
10 | "github.com/aws/aws-sdk-go/aws/request" | ||
11 | "github.com/aws/aws-sdk-go/private/protocol/query/queryutil" | ||
12 | ) | ||
13 | |||
14 | // BuildHandler is a named request handler for building query protocol requests | ||
15 | var BuildHandler = request.NamedHandler{Name: "awssdk.query.Build", Fn: Build} | ||
16 | |||
17 | // Build builds a request for an AWS Query service. | ||
18 | func Build(r *request.Request) { | ||
19 | body := url.Values{ | ||
20 | "Action": {r.Operation.Name}, | ||
21 | "Version": {r.ClientInfo.APIVersion}, | ||
22 | } | ||
23 | if err := queryutil.Parse(body, r.Params, false); err != nil { | ||
24 | r.Error = awserr.New("SerializationError", "failed encoding Query request", err) | ||
25 | return | ||
26 | } | ||
27 | |||
28 | if r.ExpireTime == 0 { | ||
29 | r.HTTPRequest.Method = "POST" | ||
30 | r.HTTPRequest.Header.Set("Content-Type", "application/x-www-form-urlencoded; charset=utf-8") | ||
31 | r.SetBufferBody([]byte(body.Encode())) | ||
32 | } else { // This is a pre-signed request | ||
33 | r.HTTPRequest.Method = "GET" | ||
34 | r.HTTPRequest.URL.RawQuery = body.Encode() | ||
35 | } | ||
36 | } | ||