Package lu.kbra.pclib.db.base
Class Database.TableTransaction
java.lang.Object
lu.kbra.pclib.db.base.Database.TableTransaction
- All Implemented Interfaces:
AutoCloseable,DBTransaction
- Direct Known Subclasses:
DeferredDatabase.DeferredTableTransaction
- Enclosing class:
Database
-
Nested Class Summary
Nested classes/interfaces inherited from interface lu.kbra.pclib.db.base.transaction.DBTransaction
DBTransaction.TransactionCustomizer -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final Connectionprotected booleanprotected booleanprotected final DelegatingConnectionprotected final ReentrantLockprotected final Set<TransactionOption> protected final Supplier<AbstractConnection> -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedTableTransaction(Connection backingConnection, Consumer<DBTransaction.TransactionCustomizer> customizer) -
Method Summary
Modifier and TypeMethodDescriptionvoidclose()voidcommit()protected voidprotected voidexecuteLocked(Runnable action) protected <B> BexecuteLocked(Supplier<B> action) booleanisClosed()voidrollback()<T extends DatabaseEntry,V extends DatabaseTable<T>>
DatabaseTable<T> use(V inst)
-
Field Details
-
lock
-
closed
protected volatile boolean closed -
completed
protected volatile boolean completed -
backingConnection
-
connection
-
useMethod
-
options
-
-
Constructor Details
-
TableTransaction
protected TableTransaction(Connection backingConnection, Consumer<DBTransaction.TransactionCustomizer> customizer)
-
-
Method Details
-
close
- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceDBTransaction- Throws:
DBException
-
commit
- Specified by:
commitin interfaceDBTransaction- Throws:
DBException
-
getConnection
- Specified by:
getConnectionin interfaceDBTransaction
-
isClosed
public boolean isClosed()- Specified by:
isClosedin interfaceDBTransaction
-
rollback
- Specified by:
rollbackin interfaceDBTransaction- Throws:
DBException
-
use
- Specified by:
usein interfaceDBTransaction
-
ensureOpen
protected void ensureOpen() -
executeLocked
- Throws:
DBException
-
executeLocked
- Throws:
DBException
-