MCPcopy Create free account
hub / github.com/atomicdotdev/atomic / get_session_manifest

Method get_session_manifest

atomic-core/src/pristine/txn/read.rs:661–676  ·  view source on GitHub ↗

Load an immutable session manifest by content hash.

(
        &self,
        hash: &crate::types::Hash,
    )

Source from the content-addressed store, hash-verified

659
660 /// Load an immutable session manifest by content hash.
661 pub fn get_session_manifest(
662 &self,
663 hash: &crate::types::Hash,
664 ) -> PristineResult<Option<crate::change::session::SessionManifest>> {
665 use crate::change::session::SessionManifest;
666
667 let table = self.txn.open_table(SESSION_MANIFESTS)?;
668 match table.get(hash.as_bytes())? {
669 Some(value) => SessionManifest::from_bytes(value.value())
670 .map(Some)
671 .map_err(|e| PristineError::Serialization {
672 message: format!("session manifest decode: {}", e),
673 }),
674 None => Ok(None),
675 }
676 }
677
678 /// Resolve the latest manifest hash for an external session ID.
679 pub fn get_session_head(&self, session_id: &str) -> PristineResult<Option<crate::types::Hash>> {

Calls 2

getMethod · 0.65
as_bytesMethod · 0.45