Package org.multiverse.stms.gamma
Class GammaOrElseBlock
java.lang.Object
org.multiverse.stms.gamma.GammaOrElseBlock
- All Implemented Interfaces:
OrElseBlock
,MultiverseConstants
-
Field Summary
Fields inherited from interface org.multiverse.MultiverseConstants
LOCKMODE_EXCLUSIVE, LOCKMODE_NONE, LOCKMODE_READ, LOCKMODE_WRITE, SHAKE_BUGS, SPIN_YIELD, TRACING_ENABLED
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionboolean
execute
(TxnBooleanCallable either, TxnBooleanCallable orelse) Executes the either, or when it is retried, the orelse block.<E> E
execute
(TxnCallable<E> either, TxnCallable<E> orelse) Executes the either, or when it is retried, the orelse block.double
execute
(TxnDoubleCallable either, TxnDoubleCallable orelse) Executes the either, or when it is retried, the orelse block.int
execute
(TxnIntCallable either, TxnIntCallable orelse) Executes the either, or when it is retried, the orelse block.long
execute
(TxnLongCallable either, TxnLongCallable orelse) Executes the either, or when it is retried, the orelse block.void
execute
(TxnVoidCallable either, TxnVoidCallable orelse) Executes the either, or when it is retried, the orelse block.boolean
executeChecked
(TxnBooleanCallable either, TxnBooleanCallable orelse) Executes the either, or when it is retried, the orelse block.<E> E
executeChecked
(TxnCallable<E> either, TxnCallable<E> orelse) Executes the either, or when it is retried, the orelse block.double
executeChecked
(TxnDoubleCallable either, TxnDoubleCallable orelse) Executes the either, or when it is retried, the orelse block.int
executeChecked
(TxnIntCallable either, TxnIntCallable orelse) Executes the either, or when it is retried, the orelse block.long
executeChecked
(TxnLongCallable either, TxnLongCallable orelse) Executes the either, or when it is retried, the orelse block.void
executeChecked
(TxnVoidCallable either, TxnVoidCallable orelse) Executes the either, or when it is retried, the orelse block.
-
Constructor Details
-
GammaOrElseBlock
public GammaOrElseBlock()
-
-
Method Details
-
execute
Description copied from interface:OrElseBlock
Executes the either, or when it is retried, the orelse block. This operation makes composable blocking operations possible. If in the execution of the closure a checked exception is thrown, the exception is wrapped in a InvisibleCheckedException. The original exception can be retrieved by calling the getCause method.- Specified by:
execute
in interfaceOrElseBlock
- Returns:
- the result of the execution.
-
executeChecked
Description copied from interface:OrElseBlock
Executes the either, or when it is retried, the orelse block. This operation makes composable blocking operations possible.- Specified by:
executeChecked
in interfaceOrElseBlock
- Returns:
- the result of the execution.
- Throws:
NullPointerException
- if either or orelse is null.TxnMandatoryException
- if no transaction is found on the TxnThreadLocal.Exception
- if the atomicChecked call fails.
-
execute
Description copied from interface:OrElseBlock
Executes the either, or when it is retried, the orelse block. This operation makes composable blocking operations possible. If in the execution of the closure a checked exception is thrown, the exception is wrapped in a InvisibleCheckedException. The original exception can be retrieved by calling the getCause method.- Specified by:
execute
in interfaceOrElseBlock
- Returns:
- the result of the execution.
-
executeChecked
Description copied from interface:OrElseBlock
Executes the either, or when it is retried, the orelse block. This operation makes composable blocking operations possible.- Specified by:
executeChecked
in interfaceOrElseBlock
- Returns:
- the result of the execution.
- Throws:
NullPointerException
- if either or orelse is null.Exception
- if the atomicChecked call fails.
-
execute
Description copied from interface:OrElseBlock
Executes the either, or when it is retried, the orelse block. This operation makes composable blocking operations possible. If in the execution of the closure a checked exception is thrown, the exception is wrapped in a InvisibleCheckedException. The original exception can be retrieved by calling the getCause method.- Specified by:
execute
in interfaceOrElseBlock
- Returns:
- the result of the execution.
-
executeChecked
Description copied from interface:OrElseBlock
Executes the either, or when it is retried, the orelse block. This operation makes composable blocking operations possible.- Specified by:
executeChecked
in interfaceOrElseBlock
- Returns:
- the result of the execution.
- Throws:
NullPointerException
- if either or orelse is null.Exception
- if the atomicChecked call fails.
-
execute
Description copied from interface:OrElseBlock
Executes the either, or when it is retried, the orelse block. This operation makes composable blocking operations possible. If in the execution of the closure a checked exception is thrown, the exception is wrapped in a InvisibleCheckedException. The original exception can be retrieved by calling the getCause method.- Specified by:
execute
in interfaceOrElseBlock
- Returns:
- the result of the execution.
-
executeChecked
Description copied from interface:OrElseBlock
Executes the either, or when it is retried, the orelse block. This operation makes composable blocking operations possible.- Specified by:
executeChecked
in interfaceOrElseBlock
- Returns:
- the result of the execution.
- Throws:
NullPointerException
- if either or orelse is null.Exception
- if the atomicChecked call fails.
-
execute
Description copied from interface:OrElseBlock
Executes the either, or when it is retried, the orelse block. This operation makes composable blocking operations possible. If in the execution of the closure a checked exception is thrown, the exception is wrapped in a InvisibleCheckedException. The original exception can be retrieved by calling the getCause method.- Specified by:
execute
in interfaceOrElseBlock
- Returns:
- the result of the execution.
-
executeChecked
public boolean executeChecked(TxnBooleanCallable either, TxnBooleanCallable orelse) throws Exception Description copied from interface:OrElseBlock
Executes the either, or when it is retried, the orelse block. This operation makes composable blocking operations possible.- Specified by:
executeChecked
in interfaceOrElseBlock
- Returns:
- the result of the execution.
- Throws:
NullPointerException
- if either or orelse is null.Exception
- if the atomicChecked call fails.
-
execute
Description copied from interface:OrElseBlock
Executes the either, or when it is retried, the orelse block. This operation makes composable blocking operations possible. If in the execution of the closure a checked exception is thrown, the exception is wrapped in a InvisibleCheckedException. The original exception can be retrieved by calling the getCause method.- Specified by:
execute
in interfaceOrElseBlock
-
executeChecked
Description copied from interface:OrElseBlock
Executes the either, or when it is retried, the orelse block. This operation makes composable blocking operations possible.- Specified by:
executeChecked
in interfaceOrElseBlock
- Throws:
NullPointerException
- if either or orelse is null.Exception
- if the atomicChecked call fails.
-