Documentation
¶
Overview ¶
Package stream provides functions to send or receive messages using a grpc stream.
Index ¶
- Constants
- func CloseSend(s Sender) error
- func RecvAll(r Receiver, out interface{}) error
- func SendAll(s Sender, in interface{}) error
- func SendAndRecvAll(sr SendReceiver, in interface{}, out interface{}) error
- type Buffer
- type Receiver
- type SendCloser
- type SendReceiver
- type Sender
- type Stream
- type WrappedStream
Constants ¶
const ErrInvalidProtoMessage err = "not a proto message"
ErrInvalidProtoMessage indicates that the object is not a proto message.
Variables ¶
This section is empty.
Functions ¶
func SendAndRecvAll ¶
func SendAndRecvAll(sr SendReceiver, in interface{}, out interface{}) error
SendAndRecvAll sends and receives messages until getting io.EOF.
Types ¶
type Buffer ¶ added in v0.8.0
type Buffer struct {
// contains filtered or unexported fields
}
Buffer is a buffer of sending and receiving messages.
type Receiver ¶
type Receiver interface {
RecvMsg(m interface{}) error
}
Receiver is an interface wrapper around grpc.ClientStream and grpc.ServerStream.
func TeeReceiver ¶ added in v0.8.0
TeeReceiver returns a Receiver that sends to s what it receives from r.
type SendCloser ¶
SendCloser is an interface wrapper around grpc.ClientStream.
type SendReceiver ¶
SendReceiver is an interface wrapper around grpc.ClientStream and grpc.ServerStream.
type Sender ¶
type Sender interface {
SendMsg(m interface{}) error
}
Sender is an interface wrapper around grpc.ClientStream and grpc.ServerStream.
type Stream ¶ added in v0.8.0
type Stream interface {
Context() context.Context
SetHeader(metadata.MD) error
SendHeader(metadata.MD) error
SetTrailer(metadata.MD)
SendReceiver
}
Stream is an interface wrapper around grpc.ClientStream and grpc.ServerStream.
type WrappedStream ¶ added in v0.8.0
type WrappedStream struct {
Stream
// contains filtered or unexported fields
}
WrappedStream is a wrapper around the Stream.
func Wrap ¶ added in v0.8.0
func Wrap(stream Stream) *WrappedStream
Wrap initiates a wrapped stream.
func (*WrappedStream) RecvMsg ¶ added in v0.8.0
func (s *WrappedStream) RecvMsg(m interface{}) error
RecvMsg satisfies Stream interface.
func (*WrappedStream) SendMsg ¶ added in v0.8.0
func (s *WrappedStream) SendMsg(m interface{}) error
SendMsg satisfies Stream interface.
func (*WrappedStream) WithReceiver ¶ added in v0.8.0
func (s *WrappedStream) WithReceiver(rc Receiver) *WrappedStream
WithReceiver wraps the stream with a new sender.
func (*WrappedStream) WithSender ¶ added in v0.8.0
func (s *WrappedStream) WithSender(sd Sender) *WrappedStream
WithSender wraps the stream with a new sender.