Documentation ¶
Overview ¶
Package codec is an interface for encoding messages
Index ¶
Constants ¶
This section is empty.
Variables ¶
var (
ErrInvalidMessage = errors.New("invalid message")
)
Functions ¶
This section is empty.
Types ¶
type Codec ¶
Codec encodes/decodes various types of messages used within go-micro. ReadHeader and ReadBody are called in pairs to read requests/responses from the connection. Close is called when finished with the connection. ReadBody may be called with a nil argument to force the body to be read and discarded.
type Marshaler ¶
type Marshaler interface { Marshal(interface{}) ([]byte, error) Unmarshal([]byte, interface{}) error String() string }
Marshaler is a simple encoding interface used for the broker/transport where headers are not supported by the underlying implementation.
type Message ¶
type Message struct { // The values read from the socket Header map[string]string Id string Service string Method string Endpoint string Error string Body []byte Type MessageType }
Message represents detailed information about the communication, likely followed by the body. In the case of an error, body may be nil.
type NewCodec ¶
type NewCodec func(io.ReadWriteCloser) Codec
Takes in a connection/buffer and returns a new Codec.