Package lu.kbra.pclib.db.base
Class Database.AbstractTableTransaction
java.lang.Object
lu.kbra.pclib.db.base.Database.AbstractTableTransaction
- All Implemented Interfaces:
AutoCloseable,DBTransaction
- Direct Known Subclasses:
DeferredDatabase.DeferredAbstractTableTransaction
- Enclosing class:
- Database
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected booleanprotected booleanprotected final Connectionprotected final ReentrantLock -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidclose()voidcommit()protected voidprotected voidexecuteLocked(Runnable action) protected <B> BexecuteLocked(Supplier<B> action) booleanisClosed()voidrollback()<X extends DatabaseEntry,V extends DatabaseTable<X>>
DatabaseTable<X>use(V inst)
-
Field Details
-
lock
-
closed
protected volatile boolean closed -
completed
protected volatile boolean completed -
connection
-
-
Constructor Details
-
AbstractTableTransaction
public AbstractTableTransaction() -
AbstractTableTransaction
-
-
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
-