gopkg.in/rethinkdb/rethinkdb-go.v6@v6.2.2/connection_helper.go (about)

     1  package rethinkdb
     2  
     3  import (
     4  	"golang.org/x/net/context"
     5  	"io"
     6  )
     7  
     8  // Write 'data' to conn
     9  func (c *Connection) writeData(data []byte) error {
    10  	_, err := c.Conn.Write(data[:])
    11  
    12  	return err
    13  }
    14  
    15  func (c *Connection) read(buf []byte) (total int, err error) {
    16  	return io.ReadFull(c.Conn, buf)
    17  }
    18  
    19  func (c *Connection) contextFromConnectionOpts() context.Context {
    20  	// back compatibility
    21  	min := c.opts.ReadTimeout
    22  	if c.opts.WriteTimeout < min {
    23  		min = c.opts.WriteTimeout
    24  	}
    25  	if min == 0 {
    26  		return context.Background()
    27  	}
    28  	ctx, _ := context.WithTimeout(context.Background(), min)
    29  	return ctx
    30  }