* feat(tracker): update message schema with BatchMetadata; separate message-related responsibilities; add message size * chore(docker): removing edge busybox, as the main repo updated * feat(backend): updated message protocol templates * feat(backend): added support of message size * feat(backend): implemented iterator for new message protocol (with message size) Co-authored-by: Alex Kaminskii <alex@openreplay.com>
23 lines
350 B
Go
23 lines
350 B
Go
package messages
|
|
|
|
type message struct {
|
|
Timestamp int64
|
|
Index uint64
|
|
}
|
|
|
|
func (m *message) Meta() *message {
|
|
return m
|
|
}
|
|
|
|
func (m *message) SetMeta(origin *message) {
|
|
m.Timestamp = origin.Timestamp
|
|
m.Index = origin.Index
|
|
}
|
|
|
|
type Message interface {
|
|
Encode() []byte
|
|
EncodeWithIndex() []byte
|
|
Decode() Message
|
|
TypeID() int
|
|
Meta() *message
|
|
}
|