@@ -30,22 +30,26 @@ func (t *CreateSessionTransport) RoundTrip(request *http.Request) (*http.Respons
30
30
defer func () { t .Error = err }() // dirty hack, for get error from round trip
31
31
response , err := http .DefaultTransport .RoundTrip (request )
32
32
if err != nil {
33
- return nil , errors .New ("round trip to node: " + err .Error ())
33
+ err = errors .New ("round trip to node: " + err .Error ())
34
+ return nil , err
34
35
}
35
36
36
37
b , err := ioutil .ReadAll (response .Body )
37
38
if err != nil {
38
- return nil , errors .New ("read node response: " + err .Error ())
39
+ err = errors .New ("read node response: " + err .Error ())
40
+ return nil , err
39
41
}
40
42
err = response .Body .Close ()
41
43
if err != nil {
42
- return nil , errors .New ("close response body: " + err .Error ())
44
+ err = errors .New ("close response body: " + err .Error ())
45
+ return nil , err
43
46
}
44
47
45
48
var message jsonwire.NewSession
46
49
err = json .Unmarshal (b , & message )
47
50
if err != nil {
48
- return nil , errors .New ("read body with sessionID: " + err .Error ())
51
+ err = errors .New ("read body with sessionID: " + err .Error ())
52
+ return nil , err
49
53
}
50
54
var sessionID string
51
55
switch {
@@ -54,14 +58,16 @@ func (t *CreateSessionTransport) RoundTrip(request *http.Request) (*http.Respons
54
58
case message .Value .SessionID != "" :
55
59
sessionID = message .Value .SessionID
56
60
default :
57
- return nil , fmt .Errorf ("session not created, response: %s" , string (b ))
61
+ err = fmt .Errorf ("session not created, response: %s" , string (b ))
62
+ return nil , err
58
63
}
59
64
log .Infof ("register SessionID: %s on node %s" , sessionID , t .node .Address )
60
65
err = t .pool .RegisterSession (t .node , sessionID )
61
66
if err != nil {
62
- return nil , fmt .Errorf ("sessionId not registred in storage: %s" , sessionID )
67
+ err = fmt .Errorf ("sessionId not registred in storage: %s" , sessionID )
68
+ return nil , err
63
69
}
64
70
response .Body = ioutil .NopCloser (bytes .NewReader (b ))
65
71
t .IsSuccess = true
66
- return response , err
72
+ return response , nil
67
73
}
0 commit comments