pub struct SQLiteDatabase { /* private fields */ }
๐Deprecated since 0.35.0: Use LMDB or other backend instead
Expand description
SQLite Nostr Database
Implementationsยง
Sourceยงimpl SQLiteDatabase
impl SQLiteDatabase
Sourcepub async fn open<P>(path: P) -> Result<Self, DatabaseError>
pub async fn open<P>(path: P) -> Result<Self, DatabaseError>
Open database with unlimited capacity
Sourcepub async fn open_bounded<P>(
path: P,
max_capacity: usize,
) -> Result<Self, DatabaseError>
pub async fn open_bounded<P>( path: P, max_capacity: usize, ) -> Result<Self, DatabaseError>
Open database with limited capacity
Trait Implementationsยง
Sourceยงimpl Clone for SQLiteDatabase
impl Clone for SQLiteDatabase
Sourceยงfn clone(&self) -> SQLiteDatabase
fn clone(&self) -> SQLiteDatabase
Returns a copy of the value. Read more
1.0.0 ยท Sourceยงfn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSourceยงimpl Debug for SQLiteDatabase
impl Debug for SQLiteDatabase
Sourceยงimpl NostrDatabase for SQLiteDatabase
impl NostrDatabase for SQLiteDatabase
Sourceยงfn backend(&self) -> Backend
fn backend(&self) -> Backend
Name of the backend database used (ex. rocksdb, lmdb, sqlite, indexeddb, โฆ)
Sourceยงfn save_event<'life0, 'life1, 'async_trait>(
&'life0 self,
event: &'life1 Event,
) -> Pin<Box<dyn Future<Output = Result<bool, DatabaseError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn save_event<'life0, 'life1, 'async_trait>(
&'life0 self,
event: &'life1 Event,
) -> Pin<Box<dyn Future<Output = Result<bool, DatabaseError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Sourceยงfn check_id<'life0, 'life1, 'async_trait>(
&'life0 self,
event_id: &'life1 EventId,
) -> Pin<Box<dyn Future<Output = Result<DatabaseEventStatus, DatabaseError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn check_id<'life0, 'life1, 'async_trait>(
&'life0 self,
event_id: &'life1 EventId,
) -> Pin<Box<dyn Future<Output = Result<DatabaseEventStatus, DatabaseError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Check event status by ID Read more
Sourceยงfn has_coordinate_been_deleted<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
coordinate: &'life1 Coordinate,
timestamp: &'life2 Timestamp,
) -> Pin<Box<dyn Future<Output = Result<bool, DatabaseError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn has_coordinate_been_deleted<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
coordinate: &'life1 Coordinate,
timestamp: &'life2 Timestamp,
) -> Pin<Box<dyn Future<Output = Result<bool, DatabaseError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Check if
Coordinate
has been deleted before a certain Timestamp
Sourceยงfn event_id_seen<'life0, 'async_trait>(
&'life0 self,
event_id: EventId,
relay_url: Url,
) -> Pin<Box<dyn Future<Output = Result<(), DatabaseError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn event_id_seen<'life0, 'async_trait>(
&'life0 self,
event_id: EventId,
relay_url: Url,
) -> Pin<Box<dyn Future<Output = Result<(), DatabaseError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Sourceยงfn event_seen_on_relays<'life0, 'life1, 'async_trait>(
&'life0 self,
event_id: &'life1 EventId,
) -> Pin<Box<dyn Future<Output = Result<Option<HashSet<Url>>, DatabaseError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn event_seen_on_relays<'life0, 'life1, 'async_trait>(
&'life0 self,
event_id: &'life1 EventId,
) -> Pin<Box<dyn Future<Output = Result<Option<HashSet<Url>>, DatabaseError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Get list of relays that have seen the
EventId
Sourceยงfn event_by_id<'life0, 'life1, 'async_trait>(
&'life0 self,
event_id: &'life1 EventId,
) -> Pin<Box<dyn Future<Output = Result<Option<Event>, DatabaseError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn event_by_id<'life0, 'life1, 'async_trait>(
&'life0 self,
event_id: &'life1 EventId,
) -> Pin<Box<dyn Future<Output = Result<Option<Event>, DatabaseError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Sourceยงfn count<'life0, 'async_trait>(
&'life0 self,
filters: Vec<Filter>,
) -> Pin<Box<dyn Future<Output = Result<usize, DatabaseError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn count<'life0, 'async_trait>(
&'life0 self,
filters: Vec<Filter>,
) -> Pin<Box<dyn Future<Output = Result<usize, DatabaseError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Sourceยงfn query<'life0, 'async_trait>(
&'life0 self,
filters: Vec<Filter>,
) -> Pin<Box<dyn Future<Output = Result<Vec<Event>, DatabaseError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn query<'life0, 'async_trait>(
&'life0 self,
filters: Vec<Filter>,
) -> Pin<Box<dyn Future<Output = Result<Vec<Event>, DatabaseError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Query store with filters
Sourceยงfn negentropy_items<'life0, 'async_trait>(
&'life0 self,
filter: Filter,
) -> Pin<Box<dyn Future<Output = Result<Vec<(EventId, Timestamp)>, DatabaseError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn negentropy_items<'life0, 'async_trait>(
&'life0 self,
filter: Filter,
) -> Pin<Box<dyn Future<Output = Result<Vec<(EventId, Timestamp)>, DatabaseError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get
negentropy
itemsAuto Trait Implementationsยง
impl Freeze for SQLiteDatabase
impl !RefUnwindSafe for SQLiteDatabase
impl Send for SQLiteDatabase
impl Sync for SQLiteDatabase
impl Unpin for SQLiteDatabase
impl !UnwindSafe for SQLiteDatabase
Blanket Implementationsยง
Sourceยงimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Sourceยงfn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Sourceยงimpl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Sourceยงimpl<T> Instrument for T
impl<T> Instrument for T
Sourceยงfn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Sourceยงfn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Sourceยงimpl<T> IntoNostrDatabase for Twhere
T: NostrDatabase + 'static,
impl<T> IntoNostrDatabase for Twhere
T: NostrDatabase + 'static,
fn into_nostr_database(self) -> Arc<dyn NostrDatabase>
Sourceยงimpl<T> NostrDatabaseExt for Twhere
T: NostrDatabase + ?Sized,
impl<T> NostrDatabaseExt for Twhere
T: NostrDatabase + ?Sized,
Sourceยงfn profile<'life0, 'async_trait>(
&'life0 self,
public_key: PublicKey,
) -> Pin<Box<dyn Future<Output = Result<Profile, DatabaseError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: Sync + 'async_trait,
fn profile<'life0, 'async_trait>(
&'life0 self,
public_key: PublicKey,
) -> Pin<Box<dyn Future<Output = Result<Profile, DatabaseError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: Sync + 'async_trait,
Get profile metadata
Sourceยงfn contacts_public_keys<'life0, 'async_trait>(
&'life0 self,
public_key: PublicKey,
) -> Pin<Box<dyn Future<Output = Result<Vec<PublicKey>, DatabaseError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: Sync + 'async_trait,
fn contacts_public_keys<'life0, 'async_trait>(
&'life0 self,
public_key: PublicKey,
) -> Pin<Box<dyn Future<Output = Result<Vec<PublicKey>, DatabaseError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: Sync + 'async_trait,
Get contact list public keys
Sourceยงfn contacts<'life0, 'async_trait>(
&'life0 self,
public_key: PublicKey,
) -> Pin<Box<dyn Future<Output = Result<BTreeSet<Profile>, DatabaseError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: Sync + 'async_trait,
fn contacts<'life0, 'async_trait>(
&'life0 self,
public_key: PublicKey,
) -> Pin<Box<dyn Future<Output = Result<BTreeSet<Profile>, DatabaseError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: Sync + 'async_trait,
Get contact list with metadata of
PublicKey
Sourceยงfn relay_list<'life0, 'async_trait>(
&'life0 self,
public_key: PublicKey,
) -> Pin<Box<dyn Future<Output = Result<HashMap<Url, Option<RelayMetadata>>, DatabaseError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: Sync + 'async_trait,
fn relay_list<'life0, 'async_trait>(
&'life0 self,
public_key: PublicKey,
) -> Pin<Box<dyn Future<Output = Result<HashMap<Url, Option<RelayMetadata>>, DatabaseError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: Sync + 'async_trait,
Sourceยงfn relay_lists<'life0, 'async_trait, I>(
&'life0 self,
public_keys: I,
) -> Pin<Box<dyn Future<Output = Result<HashMap<PublicKey, HashMap<Url, Option<RelayMetadata>>>, DatabaseError>> + Send + 'async_trait>>where
'life0: 'async_trait,
I: IntoIterator<Item = PublicKey> + Send + 'async_trait,
Self: Sync + 'async_trait,
fn relay_lists<'life0, 'async_trait, I>(
&'life0 self,
public_keys: I,
) -> Pin<Box<dyn Future<Output = Result<HashMap<PublicKey, HashMap<Url, Option<RelayMetadata>>>, DatabaseError>> + Send + 'async_trait>>where
'life0: 'async_trait,
I: IntoIterator<Item = PublicKey> + Send + 'async_trait,
Self: Sync + 'async_trait,
Get relays list for public keys Read more