001: /*
002: * JBoss, Home of Professional Open Source.
003: * Copyright 2006, Red Hat Middleware LLC, and individual contributors
004: * as indicated by the @author tags. See the copyright.txt file in the
005: * distribution for a full listing of individual contributors.
006: *
007: * This is free software; you can redistribute it and/or modify it
008: * under the terms of the GNU Lesser General Public License as
009: * published by the Free Software Foundation; either version 2.1 of
010: * the License, or (at your option) any later version.
011: *
012: * This software is distributed in the hope that it will be useful,
013: * but WITHOUT ANY WARRANTY; without even the implied warranty of
014: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
015: * Lesser General Public License for more details.
016: *
017: * You should have received a copy of the GNU Lesser General Public
018: * License along with this software; if not, write to the Free
019: * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
020: * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
021: */
022: package org.jboss.tm;
023:
024: import javax.management.ObjectName;
025:
026: import org.jboss.mx.util.ObjectNameFactory;
027: import org.jboss.system.ServiceMBean;
028: import org.jboss.tm.integrity.TransactionIntegrityFactory;
029:
030: /**
031: * TransactionManagerService MBean interface.
032: *
033: * @see TxManager
034: * @version $Revision: 57208 $
035: */
036: public interface TransactionManagerServiceMBean extends ServiceMBean,
037: TransactionManagerFactory {
038: ObjectName OBJECT_NAME = ObjectNameFactory
039: .create("jboss:service=TransactionManager");
040:
041: /**
042: * Describe <code>getGlobalIdsEnabled</code> method here.
043: * @return an <code>boolean</code> value
044: */
045: boolean getGlobalIdsEnabled();
046:
047: /**
048: * Describe <code>setGlobalIdsEnabled</code> method here.
049: * @param newValue an <code>boolean</code> value
050: */
051: void setGlobalIdsEnabled(boolean newValue);
052:
053: /**
054: * Is thread interruption enabled at transaction timeout
055: * @return true for interrupt threads, false otherwise
056: */
057: boolean isInterruptThreads();
058:
059: /**
060: * Enable/disable thread interruption at transaction timeout.
061: * @param interruptThreads pass true to interrupt threads, false otherwise*
062: */
063: void setInterruptThreads(boolean interruptThreads);
064:
065: /**
066: * Describe <code>getTransactionTimeout</code> method here.
067: * @return an <code>int</code> value
068: */
069: int getTransactionTimeout();
070:
071: /**
072: * Describe <code>setTransactionTimeout</code> method here.
073: * @param timeout an <code>int</code> value
074: */
075: void setTransactionTimeout(int timeout);
076:
077: /**
078: * mbean get-set pair for field xidFactory Get the value of xidFactory
079: * @return value of xidFactory
080: */
081: ObjectName getXidFactory();
082:
083: /**
084: * Set the value of xidFactory
085: * @param xidFactory Value to assign to xidFactory
086: */
087: void setXidFactory(ObjectName xidFactory);
088:
089: /**
090: * Get the xa terminator
091: * @return the xa terminator
092: */
093: JBossXATerminator getXATerminator();
094:
095: /**
096: * Counts the number of transactions
097: * @return the number of active transactions
098: */
099: long getTransactionCount();
100:
101: /**
102: * The number of commits.
103: * @return the number of transactions that have been committed
104: */
105: long getCommitCount();
106:
107: /**
108: * The number of rollbacks.
109: * @return the number of transactions that have been rolled back
110: */
111: long getRollbackCount();
112:
113: /**
114: * The <code>registerXAExceptionFormatter</code> method
115: * @param clazz a <code>Class</code> value
116: * @param formatter a <code>XAExceptionFormatter</code> value
117: */
118: void registerXAExceptionFormatter(Class clazz,
119: XAExceptionFormatter formatter);
120:
121: /**
122: * The <code>unregisterXAExceptionFormatter</code> method
123: * @param clazz a <code>Class</code> value
124: */
125: void unregisterXAExceptionFormatter(Class clazz);
126:
127: /**
128: * Set the Integrity checker factory
129: *
130: * @param factory the integrity checker factory
131: */
132: void setTransactionIntegrityFactory(
133: TransactionIntegrityFactory factory);
134:
135: }
|