(&self, scope: &StoredScope)
| 43 | |
| 44 | impl 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 |
no test coverage detected