Added Message Hanlder Boilerplate

This commit is contained in:
simon 2025-05-29 22:24:50 +02:00
parent 80a2caf29e
commit 571d32b467

36
message_handler.go Normal file
View File

@ -0,0 +1,36 @@
package main
type ReaderWriter interface {
Write(p []byte) (n int, err error)
Read(b []byte) (n int, err error)
}
type Parser interface {
ParseBytes(p []byte) (n int, err error)
IsMessageAvailable() bool
GetNextMessage() (typeByte byte, payload []byte, err error)
}
type HandlerFunc func(byte, []byte)
type MessageHandler struct {
WriterReader ReaderWriter
Conf MessageHandlerConfig
MessageParser Parser
handlers map[byte]HandlerFunc
}
type MessageHandlerConfig struct {
}
func NewMessageHandlerConfig() *MessageHandlerConfig {
return &MessageHandlerConfig{}
}
func NewMessageHandler(con ReaderWriter, conf MessageHandlerConfig, msgParser Parser) *MessageHandler {
return &MessageHandler{
WriterReader: con,
Conf: conf,
MessageParser: msgParser,
}
}