pub trait BufferStore {
type Error: Error + Send + Sync + 'static;
// Required methods
fn push(&mut self, entry: BufferedEntry) -> Result<(), Self::Error>;
fn entries(&self) -> Result<Vec<BufferedEntry>, Self::Error>;
fn drop_oldest(&mut self, n: usize) -> Result<(), Self::Error>;
fn clear(&mut self) -> Result<(), Self::Error>;
fn len(&self) -> Result<usize, Self::Error>;
// Provided method
fn is_empty(&self) -> Result<bool, Self::Error> { ... }
}Expand description
Pluggable persistent / volatile storage for OfflineBuffer.
Required Associated Types§
Required Methods§
Sourcefn push(&mut self, entry: BufferedEntry) -> Result<(), Self::Error>
fn push(&mut self, entry: BufferedEntry) -> Result<(), Self::Error>
Append an entry to the back of the buffer.
Sourcefn entries(&self) -> Result<Vec<BufferedEntry>, Self::Error>
fn entries(&self) -> Result<Vec<BufferedEntry>, Self::Error>
Return all entries in insertion order.