projects
/
arvados.git
/ blobdiff
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch '14196-api-v2-tokens' refs #14196
[arvados.git]
/
sdk
/
go
/
keepclient
/
keepclient.go
diff --git
a/sdk/go/keepclient/keepclient.go
b/sdk/go/keepclient/keepclient.go
index 459197c12d64f44d76b8082a6fb8ba8911ae193e..169f1457e2e06e6e3424856809c92fc5dc74d4f9 100644
(file)
--- a/
sdk/go/keepclient/keepclient.go
+++ b/
sdk/go/keepclient/keepclient.go
@@
-101,6
+101,7
@@
type KeepClient struct {
Retries int
BlockCache *BlockCache
RequestID string
Retries int
BlockCache *BlockCache
RequestID string
+ StorageClasses []string
// set to 1 if all writable services are of disk type, otherwise 0
replicasPerService int
// set to 1 if all writable services are of disk type, otherwise 0
replicasPerService int
@@
-202,6
+203,8
@@
func (kc *KeepClient) getOrHead(method string, locator string) (io.ReadCloser, i
return ioutil.NopCloser(bytes.NewReader(nil)), 0, "", nil
}
return ioutil.NopCloser(bytes.NewReader(nil)), 0, "", nil
}
+ reqid := kc.getRequestID()
+
var expectLength int64
if parts := strings.SplitN(locator, "+", 3); len(parts) < 2 {
expectLength = -1
var expectLength int64
if parts := strings.SplitN(locator, "+", 3); len(parts) < 2 {
expectLength = -1
@@
-234,7
+237,8
@@
func (kc *KeepClient) getOrHead(method string, locator string) (io.ReadCloser, i
errs = append(errs, fmt.Sprintf("%s: %v", url, err))
continue
}
errs = append(errs, fmt.Sprintf("%s: %v", url, err))
continue
}
- kc.setRequestHeaders(req)
+ req.Header.Add("Authorization", "OAuth2 "+kc.Arvados.ApiToken)
+ req.Header.Add("X-Request-Id", reqid)
resp, err := kc.httpClient().Do(req)
if err != nil {
// Probably a network error, may be transient,
resp, err := kc.httpClient().Do(req)
if err != nil {
// Probably a network error, may be transient,
@@
-352,7
+356,8
@@
func (kc *KeepClient) GetIndex(keepServiceUUID, prefix string) (io.Reader, error
return nil, err
}
return nil, err
}
- kc.setRequestHeaders(req)
+ req.Header.Add("Authorization", "OAuth2 "+kc.Arvados.ApiToken)
+ req.Header.Set("X-Request-Id", kc.getRequestID())
resp, err := kc.httpClient().Do(req)
if err != nil {
return nil, err
resp, err := kc.httpClient().Do(req)
if err != nil {
return nil, err
@@
-543,12
+548,11
@@
func (kc *KeepClient) httpClient() HTTPClient {
var reqIDGen = httpserver.IDGenerator{Prefix: "req-"}
var reqIDGen = httpserver.IDGenerator{Prefix: "req-"}
-func (kc *KeepClient) setRequestHeaders(req *http.Request) {
- req.Header.Add("Authorization", "OAuth2 "+kc.Arvados.ApiToken)
+func (kc *KeepClient) getRequestID() string {
if kc.RequestID != "" {
if kc.RequestID != "" {
- re
q.Header.Set("X-Request-Id", kc.RequestID)
+ re
turn kc.RequestID
} else {
} else {
- re
q.Header.Set("X-Request-Id", reqIDGen.Next()
)
+ re
turn reqIDGen.Next(
)
}
}
}
}