MCPcopy Create free account
hub / github.com/DEROFDN/Engram / StoreValue

Function StoreValue

store.go:144–184  ·  view source on GitHub ↗

Store a key-value in a Graviton tree

(t string, key []byte, value []byte)

Source from the content-addressed store, hash-verified

142
143// Store a key-value in a Graviton tree
144func StoreValue(t string, key []byte, value []byte) (err error) {
145 if t == "" {
146 err = errors.New("error: missing graviton tree input")
147 return
148 } else if key == nil {
149 err = errors.New("error: missing graviton key input")
150 return
151 }
152
153 shard, err := GetShard()
154 if err != nil {
155 return
156 }
157
158 store, err := graviton.NewDiskStore(shard)
159 if err != nil {
160 return
161 }
162
163 ss, err := store.LoadSnapshot(0)
164 if err != nil {
165 return
166 }
167
168 tree, err := ss.GetTree(t)
169 if err != nil {
170 return
171 }
172
173 err = tree.Put(key, value)
174 if err != nil {
175 return
176 }
177
178 _, err = graviton.Commit(tree)
179 if err != nil {
180 return
181 }
182
183 return
184}
185
186// Get a key-value from a Graviton tree
187func GetValue(t string, key []byte) (result []byte, err error) {

Callers 6

setNetworkFunction · 0.85
setDaemonFunction · 0.85
getGnomonFunction · 0.85
setGnomonFunction · 0.85
setAuthModeFunction · 0.85
layoutSettingsFunction · 0.85

Calls 1

GetShardFunction · 0.85

Tested by

no test coverage detected