Skip to content

Commit c758c24

Browse files
committed
Improved retry.
1 parent 2f6c4d5 commit c758c24

File tree

1 file changed

+5
-11
lines changed

1 file changed

+5
-11
lines changed

rpc/base_client.go

Lines changed: 5 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
* *
1313
* hprose rpc base client for Go. *
1414
* *
15-
* LastModified: Nov 1, 2016 *
15+
* LastModified: Nov 14, 2016 *
1616
* Author: Ma Bingyao <[email protected]> *
1717
* *
1818
\**********************************************************/
@@ -368,14 +368,8 @@ func (client *BaseClient) beforeFilter(
368368
}
369369

370370
func (client *BaseClient) afterFilter(
371-
request []byte, context Context) ([]byte, error) {
372-
return client.SendAndReceive(request, context.(*ClientContext))
373-
}
374-
375-
func (client *BaseClient) sendRequest(
376-
request []byte,
377-
context *ClientContext) (response []byte, err error) {
378-
response, err = client.handlerManager.beforeFilterHandler(request, context)
371+
request []byte, context *ClientContext) (response []byte, err error) {
372+
response, err = client.SendAndReceive(request, context)
379373
if err != nil {
380374
response, err = client.retrySendReqeust(request, err, context)
381375
}
@@ -401,7 +395,7 @@ func (client *BaseClient) retrySendReqeust(
401395
if interval > 0 {
402396
time.Sleep(time.Duration(interval) * time.Millisecond)
403397
}
404-
return client.sendRequest(request, context)
398+
return client.afterFilter(request, context)
405399
}
406400
return nil, err
407401
}
@@ -547,7 +541,7 @@ func (client *BaseClient) invoke(
547541
args []reflect.Value,
548542
context *ClientContext) ([]reflect.Value, error) {
549543
request := encode(name, args, context)
550-
response, err := client.sendRequest(request, context)
544+
response, err := client.handlerManager.beforeFilterHandler(request, context)
551545
if err != nil {
552546
return nil, err
553547
}

0 commit comments

Comments
 (0)