Trait SequencedEventDatabase
Source pub trait SequencedEventDatabase: Send + Sync {
type DatabaseType;
type Error;
type DigestIter: Iterator<Item = SelfAddressingIdentifier>;
// Required methods
fn new(
db: Arc<Self::DatabaseType>,
table_name: &'static str,
) -> Result<Self, Self::Error>
where Self: Sized;
fn insert(
&self,
identifier: &IdentifierPrefix,
sn: u64,
digest: &SelfAddressingIdentifier,
) -> Result<(), Self::Error>;
fn get(
&self,
identifier: &IdentifierPrefix,
sn: u64,
) -> Result<Self::DigestIter, Self::Error>;
fn get_greater_than(
&self,
identifier: &IdentifierPrefix,
sn: u64,
) -> Result<Self::DigestIter, Self::Error>;
fn remove(
&self,
identifier: &IdentifierPrefix,
sn: u64,
said: &SelfAddressingIdentifier,
) -> Result<(), Self::Error>;
}