User: oleg
Date: 00/10/11 03:54:28
Modified: src/main/org/jboss/tm TxManager.java
TransactionManagerServiceMBean.java
TransactionManagerService.java
Log:
Transaction timeout is now configurable vie jboss.jcml
Revision Changes Path
1.22 +8 -2 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.21
retrieving revision 1.22
diff -u -r1.21 -r1.22
--- TxManager.java 2000/10/10 23:47:02 1.21
+++ TxManager.java 2000/10/11 10:54:26 1.22
@@ -38,7 +38,7 @@
* @author Rickard �berg ([EMAIL PROTECTED])
* @author <a href="mailto:[EMAIL PROTECTED]">Marc Fleury</a>
* @author <a href="mailto:[EMAIL PROTECTED]">Ole Husgaard</a>
- * @version $Revision: 1.21 $
+ * @version $Revision: 1.22 $
*/
public class TxManager
implements TransactionManager
@@ -49,8 +49,9 @@
/**
* Default timeout in milliseconds.
+ * Must be >= 1000!
*/
- int timeOut = 60*1000; // Default timeout in milliseconds
+ int timeOut = 60*1000;
// Static --------------------------------------------------------
@@ -204,6 +205,11 @@
timeOut = 1000 * seconds;
}
+ public int getTransactionTimeout()
+ {
+ return timeOut / 1000;
+ }
+
/*
* The following 2 methods are here to provide association and
* disassociation of the thread.
1.2 +4 -0 jboss/src/main/org/jboss/tm/TransactionManagerServiceMBean.java
Index: TransactionManagerServiceMBean.java
===================================================================
RCS file:
/products/cvs/ejboss/jboss/src/main/org/jboss/tm/TransactionManagerServiceMBean.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- TransactionManagerServiceMBean.java 2000/05/30 18:32:31 1.1
+++ TransactionManagerServiceMBean.java 2000/10/11 10:54:26 1.2
@@ -12,7 +12,7 @@
*
* @see <related>
* @author Rickard �berg ([EMAIL PROTECTED])
- * @version $Revision: 1.1 $
+ * @version $Revision: 1.2 $
*/
public interface TransactionManagerServiceMBean
extends org.jboss.util.ServiceMBean
@@ -21,4 +21,8 @@
public static final String OBJECT_NAME = ":service=TransactionManager";
// Public --------------------------------------------------------
+ public int getTransactionTimeout();
+
+ public void setTransactionTimeout(int timeout);
}
+
1.3 +42 -31 jboss/src/main/org/jboss/tm/TransactionManagerService.java
Index: TransactionManagerService.java
===================================================================
RCS file:
/products/cvs/ejboss/jboss/src/main/org/jboss/tm/TransactionManagerService.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- TransactionManagerService.java 2000/06/21 11:51:35 1.2
+++ TransactionManagerService.java 2000/10/11 10:54:26 1.3
@@ -32,11 +32,11 @@
/**
* This is a JMX service which manages the TransactionManager.
- * The service creates it and binds a Reference to it into JNDI.
+ * The service creates it and binds a Reference to it into JNDI.
*
* @see TxManager
* @author Rickard �berg ([EMAIL PROTECTED])
- * @version $Revision: 1.2 $
+ * @version $Revision: 1.3 $
*/
public class TransactionManagerService
extends ServiceMBeanSupport
@@ -46,36 +46,36 @@
public static String JNDI_NAME = "TransactionManager";
// Attributes ----------------------------------------------------
- MBeanServer server;
+ MBeanServer server;
// Static --------------------------------------------------------
- static TransactionManager tm;
+ static TxManager tm;
// ServiceMBeanSupport overrides ---------------------------------
public String getName()
{
return "Transaction manager";
- }
+ }
protected ObjectName getObjectName(MBeanServer server, ObjectName name)
throws javax.management.MalformedObjectNameException
{
- this.server = server;
+ this.server = server;
return new ObjectName(OBJECT_NAME);
}
-
+
protected void initService()
throws Exception
{
- // Create a new TM
- tm = new TxManager();
-
- // Bind reference to TM in JNDI
- // TODO: Move this to start when relationships are in place
- Reference ref = new Reference(tm.getClass().toString(),
getClass().getName(), null);
- new InitialContext().bind(JNDI_NAME, ref);
+ // Create a new TM
+ tm = new TxManager();
+
+ // Bind reference to TM in JNDI
+ // TODO: Move this to start when relationships are in place
+ Reference ref = new Reference(tm.getClass().toString(),
getClass().getName(), null);
+ new InitialContext().bind(JNDI_NAME, ref);
}
-
+
protected void startService()
throws Exception
{
@@ -83,25 +83,36 @@
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,
+ try
+ {
+ // Remove TM from JNDI
+ new InitialContext().unbind(JNDI_NAME);
+ } catch (Exception e)
+ {
+ log.exception(e);
+ }
+ }
+
+ public int getTransactionTimeout() {
+ return tm.getTransactionTimeout();
+ }
+
+ public void setTransactionTimeout(int timeout) {
+ try {
+ tm.setTransactionTimeout(timeout);
+ } catch (Exception ex) {
+ }
+ }
+
+ // ObjectFactory implementation ----------------------------------
+ public Object getObjectInstance(Object obj,
Name name,
Context nameCtx,
Hashtable environment)
throws Exception
- {
- // Return the transaction manager
- return tm;
- }
+ {
+ // Return the transaction manager
+ return tm;
+ }
}