pub struct DntFileObjectStore<'a, K, C> { /* private fields */ }Expand description
DNT adapter over the local file storage provider.
Implementations§
Source§impl<'a, K, C> DntFileObjectStore<'a, K, C>where
K: DntKeyProvider,
C: DntCodec,
impl<'a, K, C> DntFileObjectStore<'a, K, C>where
K: DntKeyProvider,
C: DntCodec,
Sourcepub fn new(
provider: &'a FileStorageProvider,
key_provider: &'a K,
codec: C,
policy: SealedStoragePolicy,
) -> Self
pub fn new( provider: &'a FileStorageProvider, key_provider: &'a K, codec: C, policy: SealedStoragePolicy, ) -> Self
Creates a sealed object store over an existing file provider.
Sourcepub fn write_object_compact(
&self,
path: &str,
payload: &[u8],
) -> StorageResult<()>
pub fn write_object_compact( &self, path: &str, payload: &[u8], ) -> StorageResult<()>
Seals, compacts and atomically writes an object.
Compact writes use DNT’s authenticated DEFLATE payload flag. Existing
readers open compact and normal envelopes through the same read_object
path as long as they provide a payload bound.
Trait Implementations§
Source§impl<K, C> SealedObjectStore for DntFileObjectStore<'_, K, C>where
K: DntKeyProvider,
C: DntCodec,
impl<K, C> SealedObjectStore for DntFileObjectStore<'_, K, C>where
K: DntKeyProvider,
C: DntCodec,
Source§fn write_object(&self, path: &str, payload: &[u8]) -> StorageResult<()>
fn write_object(&self, path: &str, payload: &[u8]) -> StorageResult<()>
Seals and atomically writes an object.
Source§fn read_object(&self, path: &str) -> StorageResult<Vec<u8>>
fn read_object(&self, path: &str) -> StorageResult<Vec<u8>>
Reads, authenticates and opens an object.
Source§fn verify_object(&self, path: &str) -> StorageResult<()>
fn verify_object(&self, path: &str) -> StorageResult<()>
Cryptographically verifies an object without returning plaintext.
Source§fn rekey_object(&self, path: &str, new_key_id: KeyId) -> StorageResult<()>
fn rekey_object(&self, path: &str, new_key_id: KeyId) -> StorageResult<()>
Re-encrypts an object under a new key.
Auto Trait Implementations§
impl<'a, K, C> Freeze for DntFileObjectStore<'a, K, C>where
C: Freeze,
impl<'a, K, C> RefUnwindSafe for DntFileObjectStore<'a, K, C>where
C: RefUnwindSafe,
K: RefUnwindSafe,
impl<'a, K, C> Send for DntFileObjectStore<'a, K, C>
impl<'a, K, C> Sync for DntFileObjectStore<'a, K, C>
impl<'a, K, C> Unpin for DntFileObjectStore<'a, K, C>where
C: Unpin,
impl<'a, K, C> UnsafeUnpin for DntFileObjectStore<'a, K, C>where
C: UnsafeUnpin,
impl<'a, K, C> UnwindSafe for DntFileObjectStore<'a, K, C>where
C: UnwindSafe,
K: RefUnwindSafe,
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