Documentation
¶
Index ¶
- Constants
- Variables
- func ReadFrame(r io.Reader) ([]byte, error)
- func WriteFrame(frame interface{}, w io.Writer) error
- func WriteMessage(clientID string, msg *Message, w io.Writer) error
- func WriteResponse(clientID string, response string, w io.Writer) error
- type ConsumeRequestFrame
- type HandshakeRequestFrame
- type Header
- type Message
- type MessageFrame
- type ProduceRequestFrame
- type ResponseFrame
- type UUID
Constants ¶
View Source
const ( ProtocolName = "quibe" ProtocolVersion = "0.1" ClientTypeProducer = "P" ClientTypeConsumer = "C" Success = "OK" ErrUnknownProtocol = "UnknownProtocol" ErrInvalidVersion = "InvalidVersion" ErrUnsupportedClient = "UnsupportedClient" ErrInvalidClientID = "InvalidClientID" ErrInvalidQueueName = "InvalidQueueName" ErrUnknownQueue = "UnknownQueue" ErrInternal = "InternalError" )
Variables ¶
View Source
var (
EmptyMessage = NewMessage([]byte(emptyBody))
)
Functions ¶
func ReadFrame ¶
TODO accept frame type as parameter and return that instead of []byte. It depends on having a common interface for frames.
func WriteFrame ¶
TODO interface{} here sucks!
Types ¶
type ConsumeRequestFrame ¶
func ReadConsumeRequestFrame ¶
func ReadConsumeRequestFrame(r io.Reader) (*ConsumeRequestFrame, error)
type HandshakeRequestFrame ¶
func ReadHandshakeRequest ¶
func ReadHandshakeRequest(r io.Reader) (*HandshakeRequestFrame, error)
func (*HandshakeRequestFrame) Verify ¶
func (f *HandshakeRequestFrame) Verify() error
type MessageFrame ¶
type ProduceRequestFrame ¶
func ReadProduceRequestFrame ¶
func ReadProduceRequestFrame(r io.Reader) (*ProduceRequestFrame, error)
type ResponseFrame ¶
Click to show internal directories.
Click to hide internal directories.