@@ -12,6 +12,7 @@ import (
1212 "time"
1313
1414 rt "github.com/appscode/g2/pkg/runtime"
15+ "github.com/appscode/log"
1516)
1617
1718var (
@@ -23,12 +24,12 @@ var (
2324type Client struct {
2425 sync.Mutex
2526
26- net , addr , lastcall string
27- respHandler * responseHandlerMap
28- innerHandler * responseHandlerMap
29- in chan * Response
30- conn net.Conn
31- rw * bufio.ReadWriter
27+ net , addr string
28+ respHandler * responseHandlerMap
29+ innerHandler * responseHandlerMap
30+ in chan * Response
31+ conn net.Conn
32+ rw * bufio.ReadWriter
3233
3334 ResponseTimeout time.Duration // response timeout for do() in ms
3435
@@ -171,12 +172,8 @@ func (client *Client) processLoop() {
171172 for resp := range client .in {
172173 switch resp .DataType {
173174 case rt .PT_Error :
174- if client .lastcall != "" {
175- resp = client .handleInner (client .lastcall , resp )
176- client .lastcall = ""
177- } else {
178- client .err (getError (resp .Data ))
179- }
175+ log .Errorln ("Received error" , resp .Data )
176+ client .err (getError (resp .Data ))
180177 case rt .PT_StatusRes :
181178 resp = client .handleInner ("s" + resp .Handle , resp )
182179 case rt .PT_JobCreated :
@@ -225,7 +222,6 @@ func (client *Client) do(funcname string, data []byte, flag rt.PT) (handle strin
225222 return "" , ErrLostConn
226223 }
227224 var result = make (chan handleOrError , 1 )
228- client .lastcall = "c"
229225 client .innerHandler .put ("c" , func (resp * Response ) {
230226 if resp .DataType == rt .PT_Error {
231227 err = getError (resp .Data )
@@ -240,7 +236,6 @@ func (client *Client) do(funcname string, data []byte, flag rt.PT) (handle strin
240236 req .DataType = flag
241237 if err = client .write (req ); err != nil {
242238 client .innerHandler .remove ("c" )
243- client .lastcall = ""
244239 return
245240 }
246241 var timer = time .After (client .ResponseTimeout * time .Millisecond )
@@ -249,7 +244,6 @@ func (client *Client) do(funcname string, data []byte, flag rt.PT) (handle strin
249244 return ret .handle , ret .err
250245 case <- timer :
251246 client .innerHandler .remove ("c" )
252- client .lastcall = ""
253247 return "" , ErrLostConn
254248 }
255249 return
@@ -339,7 +333,6 @@ func (client *Client) Status(handle string) (status *Status, err error) {
339333 }
340334 var mutex sync.Mutex
341335 mutex .Lock ()
342- client .lastcall = "s" + handle
343336 client .innerHandler .put ("s" + handle , func (resp * Response ) {
344337 defer mutex .Unlock ()
345338 var err error
@@ -370,7 +363,6 @@ func (client *Client) Echo(data []byte) (echo []byte, err error) {
370363 req := getRequest ()
371364 req .DataType = rt .PT_EchoReq
372365 req .Data = data
373- client .lastcall = "e"
374366 client .write (req )
375367 mutex .Lock ()
376368 return
0 commit comments