github.com/onflow/flow-go@v0.33.17/module/mempool/queue/internal/messageEntity.go (about) 1 package internal 2 3 import ( 4 "github.com/onflow/flow-go/engine" 5 "github.com/onflow/flow-go/model/flow" 6 ) 7 8 // MessageEntity is an internal data structure for storing messages in HeroQueue. 9 type MessageEntity struct { 10 Msg engine.Message 11 id flow.Identifier 12 } 13 14 var _ flow.Entity = (*MessageEntity)(nil) 15 16 func NewMessageEntity(msg *engine.Message) MessageEntity { 17 id := identifierOfMessage(msg) 18 return MessageEntity{ 19 Msg: *msg, 20 id: id, 21 } 22 } 23 24 func (m MessageEntity) ID() flow.Identifier { 25 return m.id 26 } 27 28 func (m MessageEntity) Checksum() flow.Identifier { 29 return m.id 30 } 31 32 func identifierOfMessage(msg *engine.Message) flow.Identifier { 33 return flow.MakeID(msg) 34 }