MCPcopy Create free account
hub / github.com/NodeDB-Lab/nodedb / put_scope

Method put_scope

nodedb/src/control/security/catalog/scopes.rs:45–64  ·  view source on GitHub ↗
(&self, scope: &StoredScope)

Source from the content-addressed store, hash-verified

43
44impl SystemCatalog {
45 pub fn put_scope(&self, scope: &StoredScope) -> crate::Result<()> {
46 let bytes =
47 zerompk::to_msgpack_vec(scope).map_err(|e| catalog_err("serialize scope", e))?;
48 let write_txn = self
49 .db
50 .begin_write()
51 .map_err(|e| catalog_err("scope write txn", e))?;
52 {
53 let mut table = write_txn
54 .open_table(SCOPES)
55 .map_err(|e| catalog_err("open scopes", e))?;
56 table
57 .insert(scope.name.as_str(), bytes.as_slice())
58 .map_err(|e| catalog_err("insert scope", e))?;
59 }
60 write_txn
61 .commit()
62 .map_err(|e| catalog_err("scope commit", e))?;
63 Ok(())
64 }
65
66 pub fn get_scope(&self, name: &str) -> crate::Result<Option<StoredScope>> {
67 let read_txn = self

Callers 2

defineMethod · 0.80
alterMethod · 0.80

Calls 6

begin_writeMethod · 0.80
catalog_errFunction · 0.70
insertMethod · 0.45
as_strMethod · 0.45
as_sliceMethod · 0.45
commitMethod · 0.45

Tested by

no test coverage detected