datasources 0.1.5

Async datasource interfaces, middleware, registry, and test doubles
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
use crate::connection::Connection;
use crate::isolation_level::IsolationLevel;
use crate::result::Result;
use async_trait::async_trait;
use std::sync::Arc;

#[async_trait]
pub trait Transaction: Send + Sync {
    fn connection(&self) -> Arc<dyn Connection>;
    fn isolation(&self) -> IsolationLevel;
    async fn commit(&self) -> Result<()>;
    async fn abort(&self) -> Result<()>;
}