pub struct SessionContext { /* private fields */ }Expand description
Session-level state used to manage transactions and defaults for a client connection.
Implementations§
Source§impl SessionContext
impl SessionContext
pub fn new(default_isolation: IsolationLevel) -> Self
pub fn default_isolation(&self) -> IsolationLevel
pub fn set_default_isolation(&mut self, isolation: IsolationLevel)
pub fn default_access_mode(&self) -> TransactionAccessMode
pub fn set_default_access_mode(&mut self, mode: TransactionAccessMode)
Sourcepub fn set_active_isolation(&mut self, isolation: IsolationLevel)
pub fn set_active_isolation(&mut self, isolation: IsolationLevel)
Apply a new isolation level to the currently active transaction, if one exists.
pub fn autocommit(&self) -> bool
pub fn set_autocommit(&mut self, enabled: bool)
Sourcepub fn pending_session_isolation(&self) -> Option<IsolationLevel>
pub fn pending_session_isolation(&self) -> Option<IsolationLevel>
Retrieve the pending session isolation override that will apply to the next transaction.
Sourcepub fn set_pending_session_isolation(
&mut self,
isolation: Option<IsolationLevel>,
)
pub fn set_pending_session_isolation( &mut self, isolation: Option<IsolationLevel>, )
Record a pending session isolation override that should apply to the next transaction.
pub fn pending_session_access(&self) -> Option<TransactionAccessMode>
pub fn set_pending_session_access( &mut self, mode: Option<TransactionAccessMode>, )
pub fn has_active_transaction(&self) -> bool
pub fn active_txn(&self) -> Option<&Transaction>
pub fn active_txn_mut(&mut self) -> Option<&mut Transaction>
pub fn ensure_active_transaction( &mut self, txn_mgr: &Arc<TransactionManager>, ) -> QuillSQLResult<&mut Transaction>
pub fn set_active_transaction(&mut self, txn: Transaction) -> QuillSQLResult<()>
pub fn take_active_transaction(&mut self) -> Option<Transaction>
pub fn clear_active_transaction(&mut self)
Sourcepub fn apply_transaction_modes(&mut self, modes: &TransactionModes)
pub fn apply_transaction_modes(&mut self, modes: &TransactionModes)
Apply isolation override when a transaction-scoped SET TRANSACTION is issued.
Sourcepub fn apply_session_modes(&mut self, modes: &TransactionModes)
pub fn apply_session_modes(&mut self, modes: &TransactionModes)
Merge SET SESSION TRANSACTION modes into session defaults.
Auto Trait Implementations§
impl Freeze for SessionContext
impl !RefUnwindSafe for SessionContext
impl Send for SessionContext
impl Sync for SessionContext
impl Unpin for SessionContext
impl UnsafeUnpin for SessionContext
impl !UnwindSafe for SessionContext
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