EventDatabase

Trait EventDatabase 

Source
pub trait EventDatabase {
    type Error;
    type LogDatabaseType: LogDatabase<'static>;

    // Required methods
    fn get_log_db(&self) -> Arc<Self::LogDatabaseType>;
    fn add_kel_finalized_event(
        &self,
        event: SignedEventMessage,
        id: &IdentifierPrefix,
    ) -> Result<(), Self::Error>;
    fn add_receipt_t(
        &self,
        receipt: SignedTransferableReceipt,
        id: &IdentifierPrefix,
    ) -> Result<(), Self::Error>;
    fn add_receipt_nt(
        &self,
        receipt: SignedNontransferableReceipt,
        id: &IdentifierPrefix,
    ) -> Result<(), Self::Error>;
    fn get_key_state(&self, id: &IdentifierPrefix) -> Option<IdentifierState>;
    fn get_kel_finalized_events(
        &self,
        params: QueryParameters<'_>,
    ) -> Option<impl DoubleEndedIterator<Item = TimestampedSignedEventMessage>>;
    fn get_receipts_t(
        &self,
        params: QueryParameters<'_>,
    ) -> Option<impl DoubleEndedIterator<Item = Transferable>>;
    fn get_receipts_nt(
        &self,
        params: QueryParameters<'_>,
    ) -> Option<impl DoubleEndedIterator<Item = SignedNontransferableReceipt>>;
    fn accept_to_kel(
        &self,
        event: &KeriEvent<KeyEvent>,
    ) -> Result<(), Self::Error>;
}

Required Associated Types§

Required Methods§

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§