// Add the Entity's data to disk (in JSON format) func (e *Entity) addEntityToStorage(prefix string, storage *ss.SecureStorage) error { if storage == nil { return fmt.Errorf("Error: can't add to storage, storage is nil") } val, _ := json.Marshal(e) return storage.AddItem(prefix, string(val)) }
// Add the group's data to disk (in JSON format) func (g *Group) addGroupToStorage(prefix string, storage *ss.SecureStorage) error { if storage == nil { return fmt.Errorf("Error: can't add group to storage, storage is nil") } val, _ := json.Marshal(g) return storage.AddItem(prefix, string(val)) }
func playWithSecureStorage(storage *ss.SecureStorage, secret []byte) { fileName := "try.txt" defer os.Remove(fileName) err := storage.StoreInfo(fileName) if err != nil { fmt.Println("Error while saving:", err) } fmt.Println("Original data:") fmt.Println(storage.GetDecryptStorageData()) keyText := fmt.Sprintf(keyFmt, 1) err = storage.RemoveItem(keyText) if err != nil { fmt.Println("Error while remove key:", err) } fmt.Println("After removing:") fmt.Println(storage.GetDecryptStorageData()) sd, err := ss.LoadInfo(fileName, secret) if err != nil { fmt.Println("Error while reading:", err) } fmt.Println("The data that was read from file:", fileName) fmt.Println(sd.GetDecryptStorageData()) }
// Store User data info to the secure_storage func (s Serializer) AddToStorage(prefix string, data interface{}, storage *ss.SecureStorage) error { d, ok := data.(*OtpUser) if ok == false { return fmt.Errorf("Error: Can't store the OTP property: its not in the right type") } if storage == nil { return fmt.Errorf("Error: can't add OTP property to storage, storage is nil") } value, _ := json.Marshal(d) err := storage.AddItem(prefix, string(value)) if err != nil { return err } return nil }
// Add the AM property information to the secure_storage func (s Serializer) AddToStorage(prefix string, data interface{}, storage *ss.SecureStorage) error { lock.Lock() defer lock.Unlock() d, ok := data.(*AmUserInfo) if ok == false { return fmt.Errorf("can't store the Account management property, it has an illegal type") } if storage == nil { return fmt.Errorf("can't add AM property to storage, storage is nil") } value, _ := json.Marshal(d) err := storage.AddItem(prefix, string(value)) if err != nil { return err } return nil }
// Store ACL data info in the secure_storage func (s Serializer) AddToStorage(prefix string, data interface{}, storage *ss.SecureStorage) error { lock.Lock() defer lock.Unlock() d, ok := data.(*Acl) if ok == false { return fmt.Errorf("Error: Can't store the ACL property as it has an illegal type") } if storage == nil { return fmt.Errorf("Error: Can't add an ACL property to storage, storage is nil") } value, err := json.Marshal(d) err = storage.AddItem(prefix, string(value)) if err != nil { return err } return nil }