diff options
Diffstat (limited to 'entry.go')
| -rw-r--r-- | entry.go | 7 |
1 files changed, 5 insertions, 2 deletions
@@ -1,6 +1,7 @@ package main import ( + "crypto/sha256" "encoding/json" "fmt" ) @@ -14,13 +15,15 @@ type entry struct { Body string `json:"body"` Shared []shared `json:"shared,omitempty"` Epoch int `json:"epoch,omitempty"` + id string } -func newEntry(data []byte) (entry, error) { +func newEntry(bytes []byte) (entry, error) { var entry entry - if err := json.Unmarshal(data, &entry); err != nil { + if err := json.Unmarshal(bytes, &entry); err != nil { return entry, fmt.Errorf("unable to deserialise payload: %w", err) } + entry.id = fmt.Sprintf("%x", sha256.Sum256(bytes)) return entry, nil } |
