diff --git a/storage/contact.go b/storage/contact.go index 7c49e5f1884c4044b61878aaecebd256f6cf99ff..8dc5775b3e1333b63f9c37bc881c731fe6a3fab7 100644 --- a/storage/contact.go +++ b/storage/contact.go @@ -1,3 +1,9 @@ +//////////////////////////////////////////////////////////////////////////////// +// Copyright © 2020 Privategrity Corporation / +// / +// All rights reserved. / +//////////////////////////////////////////////////////////////////////////////// + package storage import ( @@ -30,20 +36,14 @@ func (s *Session) GetContact(name string) (*Contact, error) { } func (s *Session) SetContact(name string, record *Contact) error { - now, err := time.Now().MarshalText() - if err != nil { - return err - } - key := MakeKeyPrefix("Contact", currentContactVersion) + name - var data []byte - data, err = json.Marshal(record) + data, err := json.Marshal(record) if err != nil { return err } obj := VersionedObject{ Version: currentContactVersion, - Timestamp: now, + Timestamp: time.Now(), Data: data, } return s.Set(key, &obj) diff --git a/storage/contact_test.go b/storage/contact_test.go index b4fb5e370a399a9674f438f7ebcfb3f04cfa07eb..4b7222b89590b01769474e2862631f67454b5aba 100644 --- a/storage/contact_test.go +++ b/storage/contact_test.go @@ -1,3 +1,9 @@ +//////////////////////////////////////////////////////////////////////////////// +// Copyright © 2020 Privategrity Corporation / +// / +// All rights reserved. / +//////////////////////////////////////////////////////////////////////////////// + package storage import ( diff --git a/storage/session.go b/storage/session.go index d760776eff1e15b1c7f70b7a721793dc55cebd74..f0f089bc701bbbf86bd36552c4b34478d05ecac6 100644 --- a/storage/session.go +++ b/storage/session.go @@ -52,12 +52,8 @@ func (s *Session) GetLastMessageId() (string, error) { // Set the LastMessageID in the Session func (s *Session) SetLastMessageId(id string) error { - ts, err := time.Now().MarshalText() - if err != nil { - return err - } vo := &VersionedObject{ - Timestamp: ts, + Timestamp: time.Now(), Data: []byte(id), } return s.kv.Set("LastMessageID", vo) diff --git a/storage/session_test.go b/storage/session_test.go index 01d50f5c04822c1a59fa9e7bfc32847d80cd04ba..aedf5e7b376417063cd79b97e0be64eac28e9551 100644 --- a/storage/session_test.go +++ b/storage/session_test.go @@ -25,13 +25,9 @@ func TestSession_Smoke(t *testing.T) { t.Errorf("failed to init: %+v", err) } - ts, err := time.Now().MarshalText() - if err != nil { - t.Errorf("Failed to martial time for object") - } err = s.Set("testkey", &VersionedObject{ Version: 0, - Timestamp: ts, + Timestamp: time.Now(), Data: []byte("test"), }) if err != nil { diff --git a/storage/versionedkv.go b/storage/versionedkv.go index e36de9351881c5e91ab241ebe910f35228d1de13..17567b7dc99bbd4d2082057fa04ce64fb4d47f08 100644 --- a/storage/versionedkv.go +++ b/storage/versionedkv.go @@ -1,3 +1,9 @@ +//////////////////////////////////////////////////////////////////////////////// +// Copyright © 2020 Privategrity Corporation / +// / +// All rights reserved. / +//////////////////////////////////////////////////////////////////////////////// + package storage import ( @@ -6,6 +12,7 @@ import ( "gitlab.com/elixxir/ekv" "strconv" "strings" + "time" ) // MakeKeyPrefix provides a helper with a data type and a version @@ -24,9 +31,8 @@ type VersionedObject struct { // Used to determine version upgrade, if any Version uint64 - // Marshal to/from time.Time using Time.MarshalText and - // Time.UnmarshalText - Timestamp []byte + // Set when this object is written + Timestamp time.Time // Serialized version of original object Data []byte diff --git a/storage/versionedkv_test.go b/storage/versionedkv_test.go index 4a7ccb8754bd6b70df058bc2a3c20707f9c2a5e4..deceaacb2d96899d16a4ef4e73a412f0c7cc620f 100644 --- a/storage/versionedkv_test.go +++ b/storage/versionedkv_test.go @@ -1,3 +1,9 @@ +//////////////////////////////////////////////////////////////////////////////// +// Copyright © 2020 Privategrity Corporation / +// / +// All rights reserved. / +//////////////////////////////////////////////////////////////////////////////// + package storage import ( @@ -10,22 +16,16 @@ import ( // Shows that all fields can be serialized/deserialized correctly using json func TestVersionedObject_MarshalUnmarshal(t *testing.T) { - sometime, err := time.Date(1, 2, 3, 4, 5, 6, 7, time.UTC).MarshalText() - if err != nil { - // Should never happen - t.Fatal(err) - } - original := VersionedObject{ Version: 8, - Timestamp: sometime, + Timestamp: time.Date(1, 2, 3, 4, 5, 6, 7, time.UTC), Data: []byte("original text"), } marshalled := original.Marshal() unmarshalled := VersionedObject{} - err = unmarshalled.Unmarshal(marshalled) + err := unmarshalled.Unmarshal(marshalled) if err != nil { // Should never happen t.Fatal(err) @@ -57,21 +57,12 @@ func TestVersionedKV_Get_Upgrade(t *testing.T) { kv := make(ekv.Memstore) vkv := NewVersionedKV(kv) key := MakeKeyPrefix("test", 0) + "12345" - now := time.Now() - nowText, err := now.MarshalText() - if err != nil { - //Should never happen - t.Fatal(err) - } original := VersionedObject{ Version: 0, - Timestamp: nowText, + Timestamp: time.Now(), Data: []byte("not upgraded"), } originalSerialized := original.Marshal() - if err != nil { - t.Fatal(err) - } kv[key] = originalSerialized result, err := vkv.Get(key) @@ -90,21 +81,12 @@ func TestVersionedKV_Get(t *testing.T) { vkv := NewVersionedKV(kv) originalVersion := uint64(1) key := MakeKeyPrefix("test", originalVersion) + "12345" - now := time.Now() - nowText, err := now.MarshalText() - if err != nil { - //Should never happen - t.Fatal(err) - } original := VersionedObject{ Version: originalVersion, - Timestamp: nowText, + Timestamp: time.Now(), Data: []byte("not upgraded"), } originalSerialized := original.Marshal() - if err != nil { - t.Fatal(err) - } kv[key] = originalSerialized result, err := vkv.Get(key) @@ -122,18 +104,12 @@ func TestVersionedKV_Set(t *testing.T) { vkv := NewVersionedKV(kv) originalVersion := uint64(1) key := MakeKeyPrefix("test", originalVersion) + "12345" - now := time.Now() - nowText, err := now.MarshalText() - if err != nil { - //Should never happen - t.Fatal(err) - } original := VersionedObject{ Version: originalVersion, - Timestamp: nowText, + Timestamp: time.Now(), Data: []byte("not upgraded"), } - err = vkv.Set(key, &original) + err := vkv.Set(key, &original) if err != nil { t.Fatal(err) }