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 voidaddAfterCommitAction(IAfterCommitAction p_action)Add an action to the current transaction that will be performed after the transaction has been committed.static voidbegin()Starts the transaction associated to the current thread.static voidcommit()Commits the transaction associated with the current thread.static voidend()Complete the current transaction, i.e.static TransactionManagergetInstance()Deprecated.Call the static methods directly.static ITransactiongetTransaction()Returns the transaction for the current thread.static booleanhasTransaction()Check if the current thread has a transaction.static voidrollback()Rollbacks the transaction of the current thread.static voidsetRollbackOnly()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.TransactionManagerExceptionCommits 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.TransactionManagerExceptionRollbacks 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.TransactionManagerExceptionComplete 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:
trueif the current threads has a transaction, orfalseotherwise.
-
getTransaction
public static ITransaction getTransaction()
Returns the transaction for the current thread.- Returns:
- The current transaction or
nullif 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.
-
-