org.multiverse.stms.gamma
Class GammaOrElseBlock

java.lang.Object
  extended by org.multiverse.stms.gamma.GammaOrElseBlock
All Implemented Interfaces:
OrElseBlock, MultiverseConstants

public class GammaOrElseBlock
extends Object
implements OrElseBlock


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
GammaOrElseBlock()
           
 
Method Summary
 boolean 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.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

GammaOrElseBlock

public GammaOrElseBlock()
Method Detail

execute

public <E> E execute(TxnCallable<E> either,
                     TxnCallable<E> orelse)
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 interface OrElseBlock
Returns:
the result of the execution.

executeChecked

public <E> E executeChecked(TxnCallable<E> either,
                            TxnCallable<E> 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 interface OrElseBlock
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

public int execute(TxnIntCallable either,
                   TxnIntCallable orelse)
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 interface OrElseBlock
Returns:
the result of the execution.

executeChecked

public int executeChecked(TxnIntCallable either,
                          TxnIntCallable 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 interface OrElseBlock
Returns:
the result of the execution.
Throws:
NullPointerException - if either or orelse is null.
Exception - if the atomicChecked call fails.

execute

public long execute(TxnLongCallable either,
                    TxnLongCallable orelse)
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 interface OrElseBlock
Returns:
the result of the execution.

executeChecked

public long executeChecked(TxnLongCallable either,
                           TxnLongCallable 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 interface OrElseBlock
Returns:
the result of the execution.
Throws:
NullPointerException - if either or orelse is null.
Exception - if the atomicChecked call fails.

execute

public double execute(TxnDoubleCallable either,
                      TxnDoubleCallable orelse)
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 interface OrElseBlock
Returns:
the result of the execution.

executeChecked

public double executeChecked(TxnDoubleCallable either,
                             TxnDoubleCallable 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 interface OrElseBlock
Returns:
the result of the execution.
Throws:
NullPointerException - if either or orelse is null.
Exception - if the atomicChecked call fails.

execute

public boolean execute(TxnBooleanCallable either,
                       TxnBooleanCallable orelse)
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 interface OrElseBlock
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 interface OrElseBlock
Returns:
the result of the execution.
Throws:
NullPointerException - if either or orelse is null.
Exception - if the atomicChecked call fails.

execute

public void execute(TxnVoidCallable either,
                    TxnVoidCallable orelse)
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 interface OrElseBlock

executeChecked

public void executeChecked(TxnVoidCallable either,
                           TxnVoidCallable 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 interface OrElseBlock
Throws:
NullPointerException - if either or orelse is null.
Exception - if the atomicChecked call fails.


Copyright © 2012. All Rights Reserved.