pub trait Transaction<Error>:
DbTransactionFinalizer<Err = Error>
+ QuotesTransaction<Err = Error>
+ SignaturesTransaction<Err = Error>
+ ProofsTransaction<Err = Error>
+ KVStoreTransaction<Error>
+ SagaTransaction<Err = Error>
+ CompletedOperationsTransaction<Err = Error> {
// Provided method
fn lock_quotes<'life0, 'life1, 'async_trait>(
&'life0 mut self,
_quote_ids: &'life1 [QuoteId],
) -> Pin<Box<dyn Future<Output = Result<bool, Error>> + Send + 'async_trait>>
where Self: Send + 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait { ... }
}Expand description
Base database writer
Quote advisory locks coordinate transactional quote updates. Callers must acquire all quote locks before taking row locks, and implementations must acquire a batch in stable order. Locks are held until the transaction commits or rolls back.
Provided Methods§
Sourcefn lock_quotes<'life0, 'life1, 'async_trait>(
&'life0 mut self,
_quote_ids: &'life1 [QuoteId],
) -> Pin<Box<dyn Future<Output = Result<bool, Error>> + Send + 'async_trait>>where
Self: Send + 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn lock_quotes<'life0, 'life1, 'async_trait>(
&'life0 mut self,
_quote_ids: &'life1 [QuoteId],
) -> Pin<Box<dyn Future<Output = Result<bool, Error>> + Send + 'async_trait>>where
Self: Send + 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Lock a set of quote identifiers for this transaction.
Returns true when the backend acquired a cross-process lock. Backends
without quote advisory locks return false.
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".