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.