use super::event::AuditEvent;
use super::sqlite::SqliteAuditWriter;
use crate::internal::domain::GatewayError;
#[derive(Clone)]
pub struct AuditRecorder {
writer: SqliteAuditWriter,
}
impl AuditRecorder {
#[must_use]
pub const fn new(writer: SqliteAuditWriter) -> Self {
Self { writer }
}
pub async fn record(&self, event: &AuditEvent) -> Result<(), GatewayError> {
self.writer.append(event).await
}
}