Package de.uplanet.server.transaction
Class TransactionManager
- java.lang.Object
-
- de.uplanet.server.transaction.TransactionManager
-
@Scriptable public final class TransactionManager extends Object
-
-
Constructor Summary
Constructors Constructor Description TransactionManager()
-
Method Summary
All Methods Static Methods Concrete Methods Deprecated Methods Modifier and Type Method Description static void
addAfterCommitAction(IAfterCommitAction p_action)
Add an action to the current transaction that will be performed after the transaction has been committed.static void
begin()
Starts the transaction associated to the current thread.static void
commit()
Commits the transaction associated with the current thread.static void
end()
Complete the current transaction, i.e.static TransactionManager
getInstance()
Deprecated.Call the static methods directly.static ITransaction
getTransaction()
Returns the transaction for the current thread.static boolean
hasTransaction()
Check if the current thread has a transaction.static void
rollback()
Rollbacks the transaction of the current thread.static void
setRollbackOnly()
Put the current transaction into the rollback mode, such that callingend()
will rollback the transaction.
-
-
-
Method Detail
-
getInstance
@Deprecated public static TransactionManager getInstance()
Deprecated.Call the static methods directly.- Returns:
- A new instance of
TransactionManager
.
-
begin
public static void begin()
Starts the transaction associated to the current thread. Creates an transaction object, if none is created for the current thread right now. This method ignores a multiple begin call, and writes a log entry in this case.
-
commit
public static void commit() throws de.uplanet.server.transaction.TransactionManagerException
Commits the transaction associated with the current thread. After this call no transaction object is associated with the thread anymore.- Throws:
de.uplanet.server.transaction.TransactionManagerException
-
rollback
public static void rollback() throws de.uplanet.server.transaction.TransactionManagerException
Rollbacks the transaction of the current thread. After this call no transaction object is associated with the thread anymore.- Throws:
de.uplanet.server.transaction.TransactionManagerException
-
end
public static void end() throws de.uplanet.server.transaction.TransactionManagerException
Complete the current transaction, i.e.commit()
ifsetRollbackOnly()
has not been called, orrollback()
ifsetRollbackOnly()
has been called
- Throws:
de.uplanet.server.transaction.TransactionManagerException
-
hasTransaction
public static boolean hasTransaction()
Check if the current thread has a transaction.- Returns:
true
if the current threads has a transaction, orfalse
otherwise.
-
getTransaction
public static ITransaction getTransaction()
Returns the transaction for the current thread.- Returns:
- The current transaction or
null
if no transaction was set.
-
setRollbackOnly
public static void setRollbackOnly()
Put the current transaction into the rollback mode, such that callingend()
will rollback the transaction.
-
addAfterCommitAction
public static void addAfterCommitAction(IAfterCommitAction p_action)
Add an action to the current transaction that will be performed after the transaction has been committed.Note: This method must not be called if
hasTransaction()
isfalse
.- Parameters:
p_action
- The action to be performed after commit.- Throws:
IllegalStateException
- If the method is being called whilehasTransaction()
isfalse
.
-
-