1 /* 2 * Copyright (c) 1998-2004 The Jgroup Team. 3 * 4 * This program is free software; you can redistribute it and/or modify 5 * it under the terms of the GNU Lesser General Public License version 2 as 6 * published by the Free Software Foundation. 7 * 8 * This program is distributed in the hope that it will be useful, 9 * but WITHOUT ANY WARRANTY; without even the implied warranty of 10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 11 * GNU Lesser General Public License for more details. 12 * 13 * You should have received a copy of the GNU Lesser General Public License 14 * along with this program; if not, write to the Free Software 15 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 16 * 17 */ 18 package jgroup.jini.txn; 19 20 import java.rmi.RemoteException; 21 22 import jgroup.core.InternalGMIListener; 23 import net.jini.core.transaction.CannotCommitException; 24 import net.jini.core.transaction.UnknownTransactionException; 25 26 /** 27 * @author Rohnny Moland 28 * @since Jgroup 2.2 29 */ 30 public interface InternalGroupTransactionManager 31 extends InternalGMIListener, java.io.Serializable 32 { 33 /** 34 * Transfers the non-deterministic state of the txn create 35 * to other members of the group. 36 * 37 * @param txnMgr 38 * The <code>TxnManagerTransaction</code> object 39 * @param id 40 * Transaction id of current transaction 41 * @throws RemoteException 42 */ 43 public void internalCreate(Object txnMgr, long id) 44 throws RemoteException; 45 46 public void internalCommit(long id) 47 throws UnknownTransactionException, CannotCommitException, RemoteException; 48 49 }