(entry store.NetworkMessageEntry)
| 801 | } |
| 802 | |
| 803 | func envelopeFromNetworkMessage(entry store.NetworkMessageEntry) (network.Envelope, error) { |
| 804 | envelope := network.Envelope{ |
| 805 | Protocol: network.ProtocolV0, |
| 806 | ID: strings.TrimSpace(entry.MessageID), |
| 807 | Kind: network.Kind(strings.TrimSpace(entry.Kind)), |
| 808 | WorkspaceID: strings.TrimSpace(entry.WorkspaceID), |
| 809 | Channel: strings.TrimSpace(entry.Channel), |
| 810 | From: strings.TrimSpace(entry.PeerFrom), |
| 811 | Mentions: cloneTrimmedStrings(entry.Mentions), |
| 812 | WorkID: optionalStringPtr(entry.WorkID), |
| 813 | ReplyTo: optionalStringPtr(entry.ReplyTo), |
| 814 | TraceID: optionalStringPtr(entry.TraceID), |
| 815 | CausationID: optionalStringPtr(entry.CausationID), |
| 816 | TS: entry.Timestamp.Unix(), |
| 817 | Body: cloneRawMessage(entry.Body), |
| 818 | } |
| 819 | ext, err := extensionMapFromNetworkMessage(entry) |
| 820 | if err != nil { |
| 821 | return network.Envelope{}, err |
| 822 | } |
| 823 | if len(ext) > 0 { |
| 824 | envelope.Ext = ext |
| 825 | } |
| 826 | if to := strings.TrimSpace(entry.PeerTo); to != "" { |
| 827 | envelope.To = &to |
| 828 | } |
| 829 | return envelope, nil |
| 830 | } |
| 831 | |
| 832 | func extensionMapFromNetworkMessage(entry store.NetworkMessageEntry) (network.ExtensionMap, error) { |
| 833 | trimmed := strings.TrimSpace(string(entry.ExtJSON)) |
no test coverage detected