aboutsummaryrefslogtreecommitdiff
path: root/request.go
diff options
context:
space:
mode:
Diffstat (limited to 'request.go')
-rw-r--r--request.go22
1 files changed, 17 insertions, 5 deletions
diff --git a/request.go b/request.go
index 0106d38..2834b3a 100644
--- a/request.go
+++ b/request.go
@@ -42,6 +42,23 @@ func init() {
}
}
+//RequestOptions contains additional headers and values for a request.
+type RequestOptions struct {
+ Values url.Values
+}
+
+func cloneRequestOptions(orig *RequestOptions) *RequestOptions {
+ result := RequestOptions{
+ Values: make(url.Values),
+ }
+ if orig != nil {
+ for k, v := range orig.Values {
+ result.Values[k] = v
+ }
+ }
+ return &result
+}
+
//Request contains the parameters that can be set in a request to the Swift API.
type Request struct {
Method string //"GET", "HEAD", "PUT", "POST" or "DELETE"
@@ -55,11 +72,6 @@ type Request struct {
ExpectStatusCodes []int
}
-//RequestOptions contains additional headers and values for request.
-type RequestOptions struct {
- Values url.Values
-}
-
//URL returns the full URL for this request.
func (r Request) URL(client *gophercloud.ServiceClient, values url.Values) (string, error) {
uri, err := url.Parse(client.Endpoint)