org.objectweb.jonas_tm
Interface Resource

All Superinterfaces:
java.rmi.Remote
All Known Implementing Classes:
ControlImpl, SubCoordinator

public interface Resource
extends java.rmi.Remote

This interface must be implemented by objects that will be registered to the JTM Coordinator. They may be remote.

Author:
Philippe Durieux

Field Summary
static int VOTE_COMMIT
           
static int VOTE_READONLY
           
static int VOTE_ROLLBACK
           
 
Method Summary
 void commit_one_phase()
          commit 1 phase.
 void commit()
          phase 2 of the 2PC.
 void forget()
          forget heuristics about this transaction.
 int prepare()
          phase 1 of the 2PC.
 void rollback()
          rollback transaction
 

Field Detail

VOTE_COMMIT

public static final int VOTE_COMMIT

VOTE_ROLLBACK

public static final int VOTE_ROLLBACK

VOTE_READONLY

public static final int VOTE_READONLY
Method Detail

prepare

public int prepare()
            throws java.rmi.RemoteException
phase 1 of the 2PC.
Returns:
int vote commit, rollback, or readonly.

rollback

public void rollback()
              throws java.rmi.RemoteException
rollback transaction

commit

public void commit()
            throws java.rmi.RemoteException
phase 2 of the 2PC.

commit_one_phase

public void commit_one_phase()
                      throws java.rmi.RemoteException
commit 1 phase.

forget

public void forget()
            throws java.rmi.RemoteException
forget heuristics about this transaction.