MCPcopy Index your code
hub / github.com/koding/kite / receiveData

Method receiveData

client.go:460–484  ·  view source on GitHub ↗

receiveData reads a message from session.

()

Source from the content-addressed store, hash-verified

458
459// receiveData reads a message from session.
460func (c *Client) receiveData() ([]byte, error) {
461 type recv struct {
462 msg []byte
463 err error
464 }
465
466 session := c.getSession()
467 if session == nil {
468 return nil, errors.New("not connected")
469 }
470
471 done := make(chan recv, 1)
472
473 go func() {
474 msg, err := session.Recv()
475 done <- recv{[]byte(msg), err}
476 }()
477
478 select {
479 case r := <-done:
480 return r.msg, r.err
481 case err := <-c.interrupt:
482 return nil, err
483 }
484}
485
486// processMessage processes a single message and calls a handler or callback.
487func (c *Client) processMessage(data []byte) (msg *dnode.Message, fn interface{}, err error) {

Callers 1

readLoopMethod · 0.95

Calls 2

getSessionMethod · 0.95
RecvMethod · 0.45

Tested by

no test coverage detected