drpcconn

package
v0.0.34 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 12, 2024 License: MIT Imports: 9 Imported by: 30

README

package drpcconn

import "storj.io/drpc/drpcconn"

Package drpcconn creates a drpc client connection from a transport.

Usage

type Conn
type Conn struct {
}

Conn is a drpc client connection.

func New
func New(tr drpc.Transport) *Conn

New returns a conn that uses the transport for reads and writes.

func NewWithOptions
func NewWithOptions(tr drpc.Transport, opts Options) *Conn

NewWithOptions returns a conn that uses the transport for reads and writes. The Options control details of how the conn operates.

func (*Conn) Close
func (c *Conn) Close() (err error)

Close closes the connection.

func (*Conn) Closed
func (c *Conn) Closed() <-chan struct{}

Closed returns a channel that is closed once the connection is closed.

func (*Conn) Invoke
func (c *Conn) Invoke(ctx context.Context, rpc string, enc drpc.Encoding, in, out drpc.Message) (err error)

Invoke issues the rpc on the transport serializing in, waits for a response, and deserializes it into out. Only one Invoke or Stream may be open at a time.

func (*Conn) NewStream
func (c *Conn) NewStream(ctx context.Context, rpc string, enc drpc.Encoding) (_ drpc.Stream, err error)

NewStream begins a streaming rpc on the connection. Only one Invoke or Stream may be open at a time.

func (*Conn) Transport
func (c *Conn) Transport() drpc.Transport

Transport returns the transport the conn is using.

func (*Conn) Unblocked
func (c *Conn) Unblocked() <-chan struct{}

Unblocked returns a channel that is closed once the connection is no longer blocked by a previously canceled Invoke or NewStream call. It should not be called concurrently with Invoke or NewStream.

type Options
type Options struct {
	// Manager controls the options we pass to the manager of this conn.
	Manager drpcmanager.Options
}

Options controls configuration settings for a conn.

Documentation

Overview

Package drpcconn creates a drpc client connection from a transport.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Conn

type Conn struct {
	// contains filtered or unexported fields
}

Conn is a drpc client connection.

func New

func New(tr drpc.Transport) *Conn

New returns a conn that uses the transport for reads and writes.

func NewWithOptions added in v0.0.7

func NewWithOptions(tr drpc.Transport, opts Options) *Conn

NewWithOptions returns a conn that uses the transport for reads and writes. The Options control details of how the conn operates.

func (*Conn) Close

func (c *Conn) Close() (err error)

Close closes the connection.

func (*Conn) Closed added in v0.0.7

func (c *Conn) Closed() <-chan struct{}

Closed returns a channel that is closed once the connection is closed.

func (*Conn) Invoke

func (c *Conn) Invoke(ctx context.Context, rpc string, enc drpc.Encoding, in, out drpc.Message) (err error)

Invoke issues the rpc on the transport serializing in, waits for a response, and deserializes it into out. Only one Invoke or Stream may be open at a time.

func (*Conn) NewStream

func (c *Conn) NewStream(ctx context.Context, rpc string, enc drpc.Encoding) (_ drpc.Stream, err error)

NewStream begins a streaming rpc on the connection. Only one Invoke or Stream may be open at a time.

func (*Conn) Transport

func (c *Conn) Transport() drpc.Transport

Transport returns the transport the conn is using.

func (*Conn) Unblocked added in v0.0.33

func (c *Conn) Unblocked() <-chan struct{}

Unblocked returns a channel that is closed once the connection is no longer blocked by a previously canceled Invoke or NewStream call. It should not be called concurrently with Invoke or NewStream.

type Options added in v0.0.7

type Options struct {
	// Manager controls the options we pass to the manager of this conn.
	Manager drpcmanager.Options
}

Options controls configuration settings for a conn.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL