OpenAgentID documentation
Source referencesRust module referencearsenal-store

arsenal-store · fingerprint_store

Declared module signatures, types, configuration, and source documentation.

Source: arsenal/crates/arsenal-store/src/fingerprint_store.rs. SHA-256: 4aac1a706971c702a45d583a81089130863c80ba0a0614eb7b58d0dc6056959e.

This source reference follows declared modules and preserves feature attributes. It includes public declarations and implementation methods in those modules. Private-module exports and trait resolution still require the compiler; not every declaration is a crate-root import. Function bodies and constant values are omitted. Source comments describe their implementation context and are not a production deployment claim.

fingerprint_store::FingerprintStoreResult

Result type for fingerprint store operations

pub type FingerprintStoreResult<T> = Result<T, SecretStoreError>;

Source line: 19.

fingerprint_store::FingerprintStore

Trait for fingerprint state storage backends

pub trait FingerprintStore: Send + Sync {
    /// Get the fingerprint state for an agent
    fn get_state<'a>(
        &'a self,
        agent_did: &'a str,
    ) -> Pin<Box<dyn Future<Output = FingerprintStoreResult<Option<FingerprintState>>> + Send + 'a>>;

    /// Create or update the fingerprint state for an agent
    fn update_state<'a>(
        &'a self,
        agent_did: &'a str,
        state: FingerprintState,
    ) -> Pin<Box<dyn Future<Output = FingerprintStoreResult<()>> + Send + 'a>>;

    /// Delete the fingerprint state for an agent
    fn delete_state<'a>(
        &'a self,
        agent_did: &'a str,
    ) -> Pin<Box<dyn Future<Output = FingerprintStoreResult<()>> + Send + 'a>>;

    /// Reset the fingerprint state for an agent (delete and recreate)
    fn reset_state<'a>(
        &'a self,
        agent_did: &'a str,
        new_state: FingerprintState,
    ) -> Pin<Box<dyn Future<Output = FingerprintStoreResult<()>> + Send + 'a>>;
}

Source line: 22.

fingerprint_store::InMemoryFingerprintStore

In-memory fingerprint store for development and testing

#[derive(Debug, Clone)]
pub struct InMemoryFingerprintStore {

}

Source line: 52.

fingerprint_store::InMemoryFingerprintStore::new

Create a new empty in-memory fingerprint store

#[must_use]
pub fn new() -> Self;

Source line: 59.

fingerprint_store::SqlFingerprintStore

SQL-backed fingerprint state store (Postgres / SQLite) using sqlx.

Mirrors the pattern established by SqlRevocationStore in arsenal-broker.

#[cfg(any(feature = "sqlite", feature = "postgres"))]
pub struct SqlFingerprintStore {

}

Source line: 136.

fingerprint_store::SqlFingerprintStore::connect

Create a new SQL-backed fingerprint store and ensure the schema exists.

Errors

Returns an error if the database cannot be reached or schema creation fails.

#[cfg(any(feature = "sqlite", feature = "postgres"))]
pub async fn connect(
        database_url: &str,
        table: String,
        max_connections: u32,
        connect_timeout: std::time::Duration,
    ) -> Result<Self, SecretStoreError>;

Source line: 180.

On this page