(req *Request)
| 670 | } |
| 671 | |
| 672 | func (c *rawConnection) handleRequest(req *Request) { |
| 673 | res, err := c.model.Request(req) |
| 674 | if err != nil { |
| 675 | resp := &Response{ |
| 676 | ID: req.ID, |
| 677 | Code: errorToCode(err), |
| 678 | } |
| 679 | c.send(context.Background(), resp.toWire(), nil) |
| 680 | return |
| 681 | } |
| 682 | done := make(chan struct{}) |
| 683 | resp := &Response{ |
| 684 | ID: req.ID, |
| 685 | Data: res.Data(), |
| 686 | Code: errorToCode(nil), |
| 687 | } |
| 688 | c.send(context.Background(), resp.toWire(), done) |
| 689 | <-done |
| 690 | res.Close() |
| 691 | } |
| 692 | |
| 693 | func (c *rawConnection) handleResponse(resp *Response) { |
| 694 | c.awaitingMut.Lock() |
no test coverage detected