1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
#[cfg(test)] extern crate tempfile; pub mod in_memory; #[cfg(feature = "rocksdb")] pub mod rocksdb; use arcon_error::ArconResult; /// Trait required for all state backend implementations in Arcon pub trait StateBackend: Send + Sync { fn create(name: &str) -> Self where Self: Sized; fn put(&mut self, key: &[u8], value: &[u8]) -> ArconResult<()>; fn get(&self, key: &[u8]) -> ArconResult<Vec<u8>>; fn checkpoint(&self, id: String) -> ArconResult<()>; }