ethclient: add DialContext and Close (#16318)

DialContext allows users to pass a Context object for cancellation.
Close closes the underlying RPC connection.
This commit is contained in:
Lorenzo Manacorda 2018-04-19 15:36:33 +02:00 committed by Felix Lange
parent a16f12ba86
commit b15eb665ee

View File

@ -39,7 +39,11 @@ type Client struct {
// Dial connects a client to the given URL.
func Dial(rawurl string) (*Client, error) {
c, err := rpc.Dial(rawurl)
return DialContext(context.Background(), rawurl)
}
func DialContext(ctx context.Context, rawurl string) (*Client, error) {
c, err := rpc.DialContext(ctx, rawurl)
if err != nil {
return nil, err
}
@ -51,6 +55,10 @@ func NewClient(c *rpc.Client) *Client {
return &Client{c}
}
func (ec *Client) Close() {
ec.c.Close()
}
// Blockchain Access
// BlockByHash returns the given full block.