From c3bb2b62a862c09d52226a82a032061676a0cb77 Mon Sep 17 00:00:00 2001 From: Quentin Dufour Date: Wed, 1 Nov 2023 09:25:09 +0100 Subject: rework interface --- src/storage/mod.rs | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/src/storage/mod.rs b/src/storage/mod.rs index 1a77a55..6b410a2 100644 --- a/src/storage/mod.rs +++ b/src/storage/mod.rs @@ -32,12 +32,15 @@ pub enum Error { Internal, } -// ------ Rows +// ------ Store pub trait RowStore { - fn new_ref(partition: &str, sort: &str) -> impl RowRef; - fn new_ref_batch(partition: &str, filter: Selector) -> impl RowRefBatch; + fn new_row(&self, partition: &str, sort: &str) -> impl RowRef; + fn new_row_batch(&self, partition: &str, filter: Selector) -> impl RowRefBatch; + fn new_blob(&self, key: &str) -> impl BlobRef; + fn new_blob_list(&self) -> Vec; } +// ------- Row pub trait RowRef { fn to_value(&self, content: &[u8]) -> impl RowValue; async fn get(&self) -> Result; @@ -66,11 +69,6 @@ pub trait RowValueBatch { } // ----- Blobs -pub trait BlobStore { - fn new_ref(key: &str) -> impl BlobRef; - async fn list(&self) -> (); -} - pub trait BlobRef { fn set_value(&self, content: &[u8]) -> impl BlobValue; async fn get(&self) -> impl BlobValue; -- cgit v1.2.3