User: oberg
Date: 00/05/30 11:32:32
Modified: src/main/org/jboss/tm TransactionImpl.java TxManager.java
Added: src/main/org/jboss/tm TransactionManagerService.java
TransactionManagerServiceMBean.java
Log:
Major update. Too much to mention.
Revision Changes Path
1.2 +4 -4 jboss/src/main/org/jboss/tm/TransactionImpl.java
Index: TransactionImpl.java
===================================================================
RCS file: /products/cvs/ejboss/jboss/src/main/org/jboss/tm/TransactionImpl.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- TransactionImpl.java 2000/04/22 14:30:13 1.1
+++ TransactionImpl.java 2000/05/30 18:32:30 1.2
@@ -29,7 +29,7 @@
*
* @see <related>
* @author Rickard �berg ([EMAIL PROTECTED])
- * @version $Revision: 1.1 $
+ * @version $Revision: 1.2 $
*/
public class TransactionImpl
implements Transaction, Serializable
@@ -53,16 +53,16 @@
static String hostName;
// Constructors --------------------------------------------------
- public TransactionImpl(int timeout)
+ public TransactionImpl(TxManager tm, int timeout)
{
+ this(tm);
+
resources = new Vector();
sync = new Vector();
status = Status.STATUS_ACTIVE;
this.timeout = (long)timeout;
start = System.currentTimeMillis();
-
- xid = new XidImpl((getHostName()+"/"+getNextId()).getBytes(), null);
}
public TransactionImpl(TxManager tm)
1.2 +3 -3 jboss/src/main/org/jboss/tm/TxManager.java
Index: TxManager.java
===================================================================
RCS file: /products/cvs/ejboss/jboss/src/main/org/jboss/tm/TxManager.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- TxManager.java 2000/04/22 14:30:13 1.1
+++ TxManager.java 2000/05/30 18:32:31 1.2
@@ -23,10 +23,10 @@
*
* @see <related>
* @author Rickard �berg ([EMAIL PROTECTED])
- * @version $Revision: 1.1 $
+ * @version $Revision: 1.2 $
*/
public class TxManager
- implements TransactionManager // , TransactionManagerRemote
+ implements TransactionManager
{
// Constants -----------------------------------------------------
@@ -45,7 +45,7 @@
throws NotSupportedException,SystemException
{
// System.out.println("begin tx");
- tx.set(new TransactionImpl(this));
+ tx.set(new TransactionImpl(this, timeOut));
}
public void commit()
1.1 jboss/src/main/org/jboss/tm/TransactionManagerService.java
Index: TransactionManagerService.java
===================================================================
/*
* jBoss, the OpenSource EJB server
*
* Distributable under GPL license.
* See terms of license at gnu.org.
*/
package org.jboss.tm;
import java.io.File;
import java.net.URL;
import java.rmi.server.UnicastRemoteObject;
import java.rmi.RemoteException;
import java.rmi.ServerException;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.Hashtable;
import javax.naming.InitialContext;
import javax.naming.Context;
import javax.naming.Reference;
import javax.naming.Name;
import javax.naming.spi.ObjectFactory;
import javax.management.MBeanServer;
import javax.management.ObjectName;
import javax.transaction.TransactionManager;
import org.jboss.logging.Log;
import org.jboss.util.ServiceMBeanSupport;
/**
* This is a JMX service which manages the TransactionManager.
* The service creates it and binds a Reference to it into JNDI.
*
* @see TxManager
* @author Rickard �berg ([EMAIL PROTECTED])
* @version $Revision: 1.1 $
*/
public class TransactionManagerService
extends ServiceMBeanSupport
implements TransactionManagerServiceMBean, ObjectFactory
{
// Constants -----------------------------------------------------
public static String JNDI_NAME = "TransactionManager";
// Attributes ----------------------------------------------------
MBeanServer server;
// Static --------------------------------------------------------
static TransactionManager tm;
// ServiceMBeanSupport overrides ---------------------------------
public String getName()
{
return "Transaction manager";
}
protected ObjectName getObjectName(MBeanServer server, ObjectName name)
throws javax.management.MalformedObjectNameException
{
this.server = server;
return new ObjectName(OBJECT_NAME);
}
protected void initService()
throws Exception
{
// Create a new TM
tm = new TxManager();
}
protected void startService()
throws Exception
{
// Bind reference to TM in JNDI
Reference ref = new Reference(tm.getClass().toString(),
getClass().getName(), null);
new InitialContext().bind(JNDI_NAME, ref);
}
protected void stopService()
{
try
{
// Remove TM from JNDI
new InitialContext().unbind(JNDI_NAME);
} catch (Exception e)
{
log.exception(e);
}
}
// ObjectFactory implementation ----------------------------------
public Object getObjectInstance(Object obj,
Name name,
Context nameCtx,
Hashtable environment)
throws Exception
{
// Return the transaction manager
return tm;
}
}
1.1 jboss/src/main/org/jboss/tm/TransactionManagerServiceMBean.java
Index: TransactionManagerServiceMBean.java
===================================================================
/*
* jBoss, the OpenSource EJB server
*
* Distributable under GPL license.
* See terms of license at gnu.org.
*/
package org.jboss.tm;
/**
* <description>
*
* @see <related>
* @author Rickard �berg ([EMAIL PROTECTED])
* @version $Revision: 1.1 $
*/
public interface TransactionManagerServiceMBean
extends org.jboss.util.ServiceMBean
{
// Constants -----------------------------------------------------
public static final String OBJECT_NAME = ":service=TransactionManager";
// Public --------------------------------------------------------
}