github.com/status-im/status-go@v1.1.0/server/pairing/raw_message_collector.go (about) 1 package pairing 2 3 import ( 4 "context" 5 6 "github.com/status-im/status-go/protocol/protobuf" 7 8 "github.com/status-im/status-go/protocol/common" 9 ) 10 11 type RawMessageCollector struct { 12 rawMessages []*common.RawMessage 13 } 14 15 func (r *RawMessageCollector) dispatchMessage(_ context.Context, rawMessage common.RawMessage) (common.RawMessage, error) { 16 r.rawMessages = append(r.rawMessages, &rawMessage) 17 return rawMessage, nil 18 } 19 20 func (r *RawMessageCollector) getRawMessages() []*common.RawMessage { 21 return r.rawMessages 22 } 23 24 func (r *RawMessageCollector) convertToSyncRawMessage() *protobuf.SyncRawMessage { 25 syncRawMessage := new(protobuf.SyncRawMessage) 26 for _, m := range r.getRawMessages() { 27 rawMessage := new(protobuf.RawMessage) 28 rawMessage.Payload = m.Payload 29 rawMessage.MessageType = m.MessageType 30 syncRawMessage.RawMessages = append(syncRawMessage.RawMessages, rawMessage) 31 } 32 return syncRawMessage 33 }