Rollbacker (Bitronix Transaction Manager :: Core 2.1.4 API)
Date: 2013-09-15

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## bitronix.tm.twopc
Class Rollbacker

    java.lang.Object
      bitronix.tm.twopc.AbstractPhaseEngine
          bitronix.tm.twopc.Rollbacker

    public final class Rollbacker

extends AbstractPhaseEngine

Phase 1 & 2 Rollback logic engine.

Author:
  lorban

Constructor Summary
`Rollbacker(Executor executor)`

Method Summary
`protected Job` | `createJob(XAResourceHolderState resourceHolder)` Create a `Job` that is going to execute the phase command on the given resource.
`protected boolean` | `isParticipating(XAResourceHolderState xaResourceHolderState)` Determine if a resource is participating in the phase or not.
`void` | `rollback(BitronixTransaction transaction, List<XAResourceHolderState> interestedResources)` Rollback the current XA transaction.

Methods inherited from class bitronix.tm.twopc.AbstractPhaseEngine
`collectNotInterestedResources, collectResourcesUniqueNames, executePhase, logFailedResources`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### Rollbacker

    public Rollbacker(Executor executor)

Method Detail

### rollback

    public void rollback(BitronixTransaction transaction,
                         List<XAResourceHolderState> interestedResources)
                  throws HeuristicMixedException,
                         HeuristicCommitException,
                         BitronixSystemException

  Rollback the current XA transaction. Transaction will not timeout while changing status but rather by some extra logic that will manually throw the exception after doing as much cleanup as possible.

  Parameters:
    `transaction` - the transaction to rollback.
    `interestedResources` - resources that should be rolled back.
  Throws:
    `HeuristicCommitException` - when all resources committed instead.
    `HeuristicMixedException` - when some resources committed and some rolled back.
    `BitronixSystemException` - when an internal error occured.

### createJob

    protected Job createJob(XAResourceHolderState resourceHolder)

  Description copied from class: `AbstractPhaseEngine`
  Create a `Job` that is going to execute the phase command on the given resource.

  Specified by:
    `createJob` in class `AbstractPhaseEngine`
  Parameters:
    `resourceHolder` - the resource that is going to receive a command.
  Returns:
    the `Job` that is going to execute the command.

### isParticipating

    protected boolean isParticipating(XAResourceHolderState xaResourceHolderState)

  Description copied from class: `AbstractPhaseEngine`
  Determine if a resource is participating in the phase or not. A participating resource gets a job created to execute the phase's command on it.

  Specified by:
    `isParticipating` in class `AbstractPhaseEngine`
  Parameters:
    `xaResourceHolderState` - the resource to check for its participation.
  Returns:
    true if the resource must participate in the phase.

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2006-2013 Bitronix Software. All Rights Reserved.