pub struct SqliteStore { /* private fields */ }Expand description
The SQLite SBOL store. Cloneable; all clones share one connection pool.
Implementations§
Source§impl SqliteStore
impl SqliteStore
pub fn new(pool: SqlitePool) -> Self
pub fn pool(&self) -> &SqlitePool
pub async fn ping(&self) -> Result<(), DomainError>
pub fn triple_source(&self) -> Arc<dyn TripleSource>
pub fn triple_writer(&self) -> Arc<dyn TripleWriter>
pub async fn import_document( &self, input: ImportInput, ) -> Result<ImportReport, DomainError>
pub async fn import_documents( &self, inputs: Vec<ImportInput>, ) -> Result<Vec<ImportReport>, DomainError>
pub async fn graph_store_write( &self, graph: &str, body: &str, format: SerializationFormat, mode: GraphWriteMode, ) -> Result<usize, DomainError>
pub async fn graph_store_clear(&self, graph: &str) -> Result<usize, DomainError>
pub async fn graph_store_read( &self, graph: &str, ) -> Result<Vec<Triple>, DomainError>
Trait Implementations§
Source§impl Clone for SqliteStore
impl Clone for SqliteStore
Source§fn clone(&self) -> SqliteStore
fn clone(&self) -> SqliteStore
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl GraphStore for SqliteStore
impl GraphStore for SqliteStore
fn get_graph<'life0, 'async_trait>(
&'life0 self,
id: GraphId,
) -> Pin<Box<dyn Future<Output = Result<Option<GraphRecord>, DomainError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn list_graphs<'life0, 'life1, 'async_trait>(
&'life0 self,
filter: &'life1 ListGraphsFilter,
) -> Pin<Box<dyn Future<Output = Result<Vec<GraphRecord>, DomainError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn delete_graph<'life0, 'async_trait>(
&'life0 self,
id: GraphId,
) -> Pin<Box<dyn Future<Output = Result<bool, DomainError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn graph_exists_by_hash<'life0, 'life1, 'async_trait>(
&'life0 self,
hash: &'life1 [u8],
) -> Pin<Box<dyn Future<Output = Result<bool, DomainError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Source§impl LabStore for SqliteStore
impl LabStore for SqliteStore
fn corpus_counts<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<CorpusCounts, DomainError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn recent_graphs<'life0, 'async_trait>(
&'life0 self,
limit: i64,
) -> Pin<Box<dyn Future<Output = Result<Vec<GraphOverview>, DomainError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn top_classes<'life0, 'async_trait>(
&'life0 self,
limit: i64,
) -> Pin<Box<dyn Future<Output = Result<Vec<ClassCount>, DomainError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn count_graphs<'life0, 'life1, 'async_trait>(
&'life0 self,
kind: Option<&'life1 str>,
) -> Pin<Box<dyn Future<Output = Result<i64, DomainError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn list_graph_overviews<'life0, 'life1, 'async_trait>(
&'life0 self,
kind: Option<&'life1 str>,
limit: i64,
offset: i64,
) -> Pin<Box<dyn Future<Output = Result<Vec<GraphOverview>, DomainError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_graph_overview<'life0, 'async_trait>(
&'life0 self,
id: GraphId,
) -> Pin<Box<dyn Future<Output = Result<Option<GraphOverview>, DomainError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Source§fn graph_triples<'life0, 'async_trait>(
&'life0 self,
id: GraphId,
limit: i64,
offset: i64,
) -> Pin<Box<dyn Future<Output = Result<Option<GraphTriplesPage>, DomainError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn graph_triples<'life0, 'async_trait>(
&'life0 self,
id: GraphId,
limit: i64,
offset: i64,
) -> Pin<Box<dyn Future<Output = Result<Option<GraphTriplesPage>, DomainError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
One graph’s triples (paginated) plus the total, or
None if the graph
does not exist.Source§impl NeighborhoodStore for SqliteStore
impl NeighborhoodStore for SqliteStore
fn walk<'life0, 'life1, 'async_trait>(
&'life0 self,
query: &'life1 NeighborhoodQuery,
) -> Pin<Box<dyn Future<Output = Result<NeighborhoodResult, DomainError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Source§impl ObjectStore for SqliteStore
impl ObjectStore for SqliteStore
fn get_object_by_iri<'life0, 'life1, 'async_trait>(
&'life0 self,
iri: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Option<SbolObjectRecord>, DomainError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_objects_by_iris<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
iris: &'life1 [&'life2 str],
) -> Pin<Box<dyn Future<Output = Result<Vec<SbolObjectRecord>, DomainError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn list_objects<'life0, 'life1, 'async_trait>(
&'life0 self,
filter: &'life1 ListObjectsFilter,
) -> Pin<Box<dyn Future<Output = Result<Vec<SbolObjectRecord>, DomainError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_object_iri_by_id<'life0, 'async_trait>(
&'life0 self,
id: ObjectId,
) -> Pin<Box<dyn Future<Output = Result<Option<String>, DomainError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Source§impl OntologyStore for SqliteStore
impl OntologyStore for SqliteStore
fn load_ontology_from_url<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
prefix: &'life1 str,
name: &'life2 str,
source_url: &'life3 str,
) -> Pin<Box<dyn Future<Output = Result<OntologyLoadReport, DomainError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
fn load_ontology_from_text<'life0, 'life1, 'life2, 'life3, 'life4, 'async_trait>(
&'life0 self,
prefix: &'life1 str,
name: &'life2 str,
source_url: Option<&'life3 str>,
text: &'life4 str,
) -> Pin<Box<dyn Future<Output = Result<OntologyLoadReport, DomainError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
'life4: 'async_trait,
fn list_ontologies<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<OntologyRecord>, DomainError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn canonicalize<'life0, 'life1, 'async_trait>(
&'life0 self,
iri: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Option<String>, DomainError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn descendants<'life0, 'life1, 'async_trait>(
&'life0 self,
iri: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Vec<(String, i16)>, DomainError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn list_ontology_terms<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
prefix: &'life1 str,
limit: i64,
offset: i64,
search: Option<&'life2 str>,
) -> Pin<Box<dyn Future<Output = Result<(Vec<OntologyTermRecord>, i64), DomainError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn get_ontology_term<'life0, 'life1, 'async_trait>(
&'life0 self,
iri: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Option<OntologyTermRecord>, DomainError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Source§impl SbolStore for SqliteStore
impl SbolStore for SqliteStore
fn import_document<'life0, 'async_trait>(
&'life0 self,
input: ImportInput,
) -> Pin<Box<dyn Future<Output = Result<ImportReport, DomainError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn import_documents<'life0, 'async_trait>(
&'life0 self,
inputs: Vec<ImportInput>,
) -> Pin<Box<dyn Future<Output = Result<Vec<ImportReport>, DomainError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn graph_store_write<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
graph: &'life1 str,
body: &'life2 str,
format: SerializationFormat,
mode: GraphWriteMode,
) -> Pin<Box<dyn Future<Output = Result<usize, DomainError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn graph_store_clear<'life0, 'life1, 'async_trait>(
&'life0 self,
graph: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<usize, DomainError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn graph_store_read<'life0, 'life1, 'async_trait>(
&'life0 self,
graph: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Vec<Triple>, DomainError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Source§fn triples_for_subject<'life0, 'life1, 'async_trait>(
&'life0 self,
subject_iri: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Vec<Triple>, DomainError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn triples_for_subject<'life0, 'life1, 'async_trait>(
&'life0 self,
subject_iri: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Vec<Triple>, DomainError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Every triple with the given subject IRI, for single-object RDF export.
fn ping<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<(), DomainError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Source§impl SequenceSearchStore for SqliteStore
impl SequenceSearchStore for SqliteStore
fn search<'life0, 'life1, 'async_trait>(
&'life0 self,
pattern: &'life1 str,
options: SequenceSearchOptions,
) -> Pin<Box<dyn Future<Output = Result<Vec<SequenceMatch>, DomainError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn search_many<'life0, 'life1, 'async_trait>(
&'life0 self,
patterns: &'life1 [String],
options: SequenceSearchOptions,
) -> Pin<Box<dyn Future<Output = Result<Vec<BatchSequenceMatch>, DomainError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Auto Trait Implementations§
impl !RefUnwindSafe for SqliteStore
impl !UnwindSafe for SqliteStore
impl Freeze for SqliteStore
impl Send for SqliteStore
impl Sync for SqliteStore
impl Unpin for SqliteStore
impl UnsafeUnpin for SqliteStore
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> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more