Example #1
0
// UpdateCloud updates CloudAddress field of a end-node.
func (m *DB) UpdateCloud(ea common.EndnodeAddress, ca common.CloudAddress) (common.MapItem, error) {
	var item common.MapItem
	err := m.db.Update(func(tx *bolt.Tx) (err error) {
		item, err = m.getMapItem(tx, []byte(ea.IDString()))
		if err != nil {
			return err
		}
		item.CloudAddress = &ca
		return m.putMapItem(tx, item)
	})
	if err != nil {
		return common.MapItem{}, err
	}
	return item, nil
}