[jboss-cvs] JBossAS SVN: r89140 - in trunk: cluster/src/etc and 15 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Tue May 19 19:08:18 EDT 2009
Author: david.lloyd at jboss.com
Date: 2009-05-19 19:08:17 -0400 (Tue, 19 May 2009)
New Revision: 89140
Added:
trunk/server/src/etc/deploy/thread-pool-jboss-beans.xml
Modified:
trunk/build/build.xml
trunk/cluster/src/etc/hajndi-jboss-beans.xml
trunk/cluster/src/etc/hapartition-jboss-beans.xml
trunk/cluster/src/main/org/jboss/ha/framework/server/ClusterPartition.java
trunk/cluster/src/main/org/jboss/ha/jndi/DetachedHANamingService.java
trunk/cluster/src/main/org/jboss/ha/jndi/DetachedHANamingServiceMBean.java
trunk/cluster/src/main/org/jboss/ha/timestamp/TimestampDiscrepancyService.java
trunk/connector/src/main/org/jboss/resource/work/JBossWorkManager.java
trunk/connector/src/resources/jca-sar/jca-jboss-beans.xml
trunk/jmx-remoting/src/main/org/jboss/mx/remoting/rmi/ClientNotifier.java
trunk/server/src/etc/conf/all/jboss-service.xml
trunk/server/src/etc/conf/all/xmdesc/NamingService-xmbean.xml
trunk/server/src/etc/conf/minimal/jboss-service.xml
trunk/server/src/etc/conf/standard/jboss-service.xml
trunk/server/src/etc/conf/web/jboss-service.xml
trunk/server/src/main/org/jboss/naming/NamingService.java
trunk/server/src/main/org/jboss/naming/NamingServiceMBean.java
trunk/server/src/main/org/jboss/web/WebServer.java
trunk/server/src/main/org/jboss/web/WebService.java
trunk/server/src/main/org/jboss/web/WebServiceMBean.java
trunk/varia/src/resources/services/snmp/deploy/attributes.xml
Log:
JBAS-6947: Migrate all users of ThreadPool over to Executor; remove the old thread pool mbean service; use a jboss-threads deployment instead
Modified: trunk/build/build.xml
===================================================================
--- trunk/build/build.xml 2009-05-19 21:51:25 UTC (rev 89139)
+++ trunk/build/build.xml 2009-05-19 23:08:17 UTC (rev 89140)
@@ -715,15 +715,25 @@
<include name="xmdesc/Log4jService-xmbean.xml"/>
</fileset>
</copy>
+ <copy todir="${install.minimal.deployers}" overwrite="true">
+ <fileset dir="${install.default.deployers}">
+ <include name="jboss-threads.deployer/**"/>
+ </fileset>
+ </copy>
+ <copy todir="${install.minimal.deploy}" overwrite="true">
+ <fileset dir="${install.default.deploy}">
+ <include name="thread-pool-jboss-beans.xml"/>
+ <include name="hdscanner-jboss-beans.xml"/>
+ </fileset>
+ </copy>
<copy todir="${install.minimal.conf}" overwrite="true">
<fileset dir="${project.root}/server/target/etc/conf/minimal" />
</copy>
- <copy file="${project.root}/profileservice/target/resources/hdscanner-jboss-beans.xml"
- todir="${install.minimal.deploy}" overwrite="true"/>
- <copy todir="${install.minimal.lib}">
+ <copy todir="${install.minimal.lib}" overwrite="true">
<fileset dir="${install.common.lib}">
<include name="jnpserver.jar" />
<include name="log4j.jar" />
+ <include name="jboss-threads.jar" />
</fileset>
</copy>
<copy file="${project.root}/server/target/jboss-as-server-jboss-minimal.jar"
@@ -749,7 +759,8 @@
<include name="jboss-aop-jboss5.deployer/**"/>
<include name="jbossweb.deployer/**"/>
<include name="metadata-deployer-jboss-beans.xml"/>
- <include name="security-deployer-jboss-beans.xml"/>
+ <include name="security-deployer-jboss-beans.xml"/>
+ <include name="jboss-threads.deployer/**"/>
</fileset>
</copy>
<copy todir="${install.web.deploy}">
@@ -764,6 +775,7 @@
<include name="ROOT.war/**"/>
<include name="security/**"/>
<include name="transaction-jboss-beans.xml"/>
+ <include name="thread-pool-jboss-beans.xml"/>
<!-- FIXME serlvets shouldn't be using the ejb3 user transaction -->
<include name="ejb3-container-jboss-beans.xml"/>
</fileset>
Modified: trunk/cluster/src/etc/hajndi-jboss-beans.xml
===================================================================
--- trunk/cluster/src/etc/hajndi-jboss-beans.xml 2009-05-19 21:51:25 UTC (rev 89139)
+++ trunk/cluster/src/etc/hajndi-jboss-beans.xml 2009-05-19 23:08:17 UTC (rev 89140)
@@ -27,7 +27,7 @@
<property name="localNamingInstance"><inject bean="jboss:service=NamingBeanImpl" property="namingInstance"/></property>
<!-- The thread pool used to control the bootstrap and auto discovery lookups -->
- <property name="lookupPool"><inject bean="jboss.system:service=ThreadPool"/></property>
+ <property name="lookupPool"><inject bean="ThreadPool"/></property>
<!-- Bind address of bootstrap endpoint -->
<property name="bindAddress">
Modified: trunk/cluster/src/etc/hapartition-jboss-beans.xml
===================================================================
--- trunk/cluster/src/etc/hapartition-jboss-beans.xml 2009-05-19 21:51:25 UTC (rev 89139)
+++ trunk/cluster/src/etc/hapartition-jboss-beans.xml 2009-05-19 23:08:17 UTC (rev 89140)
@@ -1,24 +1,24 @@
<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- ==================================================================== -->
-<!-- Core HAParition Service Used for intra-cluster group RPCs -->
+
<!-- ==================================================================== -->
-
+<!-- Core HAParition Service Used for intra-cluster group RPCs -->
+<!-- ==================================================================== -->
+
<deployment xmlns="urn:jboss:bean-deployer:2.0">
<!-- ==================================================================== -->
<!-- Cluster Partition: defines cluster -->
<!-- ==================================================================== -->
-
- <!--
- HA services use a Cache for state management; this bean shields
- HAPartition from having to directly use the JBoss Cache API.
- -->
- <bean name="HAPartitionCacheHandler"
- class="org.jboss.ha.framework.server.HAPartitionCacheHandlerImpl">
- <property name="cacheManager"><inject bean="CacheManager"/></property>
- <property name="cacheConfigName">ha-partition</property>
- </bean>
+
+ <!--
+ HA services use a Cache for state management; this bean shields
+ HAPartition from having to directly use the JBoss Cache API.
+ -->
+ <bean name="HAPartitionCacheHandler"
+ class="org.jboss.ha.framework.server.HAPartitionCacheHandlerImpl">
+ <property name="cacheManager"><inject bean="CacheManager"/></property>
+ <property name="cacheConfigName">ha-partition</property>
+ </bean>
<bean name="HAPartition"
class="org.jboss.ha.framework.server.ClusterPartition">
@@ -28,7 +28,7 @@
<annotation>@org.jboss.aop.microcontainer.aspects.jmx.JMX(name="jboss:service=HAPartition,partition=${jboss.partition.name:DefaultPartition}", exposedInterface=org.jboss.ha.framework.server.ClusterPartitionMBean.class, registerDirectly=true)</annotation>
<!-- ClusterPartition requires a Cache for state management -->
- <property name="cacheHandler"><inject bean="HAPartitionCacheHandler"/></property>
+ <property name="cacheHandler"><inject bean="HAPartitionCacheHandler"/></property>
<!-- Name of the partition being built -->
<property name="partitionName">${jboss.partition.name:DefaultPartition}</property>
@@ -40,15 +40,15 @@
<property name="stateTransferTimeout">30000</property>
<!-- Max time (in ms) to wait for RPC calls to complete. -->
- <property name="methodCallTimeout">60000</property>
-
+ <property name="methodCallTimeout">60000</property>
+
<!-- Optionally provide a thread source to allow async connect of our channel -->
- <property name="threadPool"><inject bean="jboss.system:service=ThreadPool"/></property>
+ <property name="threadPool"><inject bean="ThreadPool"/></property>
<property name="distributedStateImpl">
<bean name="DistributedState"
class="org.jboss.ha.framework.server.DistributedStateImpl">
- <annotation>@org.jboss.aop.microcontainer.aspects.jmx.JMX(name="jboss:service=DistributedState,partitionName=${jboss.partition.name:DefaultPartition}", exposedInterface=org.jboss.ha.framework.server.DistributedStateImplMBean.class, registerDirectly=true)</annotation>
+ <annotation>@org.jboss.aop.microcontainer.aspects.jmx.JMX(name="jboss:service=DistributedState,partitionName=${jboss.partition.name:DefaultPartition}", exposedInterface=org.jboss.ha.framework.server.DistributedStateImplMBean.class, registerDirectly=true)</annotation>
<property name="cacheHandler"><inject bean="HAPartitionCacheHandler"/></property>
</bean>
</property>
Modified: trunk/cluster/src/main/org/jboss/ha/framework/server/ClusterPartition.java
===================================================================
--- trunk/cluster/src/main/org/jboss/ha/framework/server/ClusterPartition.java 2009-05-19 21:51:25 UTC (rev 89139)
+++ trunk/cluster/src/main/org/jboss/ha/framework/server/ClusterPartition.java 2009-05-19 23:08:17 UTC (rev 89140)
@@ -38,14 +38,7 @@
import java.util.Vector;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.CountDownLatch;
-
-import javax.naming.Context;
-import javax.naming.InitialContext;
-import javax.naming.Name;
-import javax.naming.NameNotFoundException;
-import javax.naming.Reference;
-import javax.naming.StringRefAddr;
-
+import java.util.concurrent.Executor;
import org.jboss.bootstrap.spi.util.ServerConfigUtil;
import org.jboss.ha.framework.interfaces.ClusterNode;
import org.jboss.ha.framework.interfaces.DistributedReplicantManager;
@@ -71,7 +64,6 @@
import org.jboss.managed.api.annotation.ViewUse;
import org.jboss.naming.NonSerializableFactory;
import org.jboss.system.ServiceMBeanSupport;
-import org.jboss.util.threadpool.ThreadPool;
import org.jgroups.Address;
import org.jgroups.Channel;
import org.jgroups.ChannelFactory;
@@ -90,6 +82,13 @@
import org.jgroups.util.Rsp;
import org.jgroups.util.RspList;
+import javax.naming.Context;
+import javax.naming.InitialContext;
+import javax.naming.Name;
+import javax.naming.NameNotFoundException;
+import javax.naming.Reference;
+import javax.naming.StringRefAddr;
+
/**
* {@link HAPartition} implementation based on a
* <a href="http://www.jgroups.com/">JGroups</a> <code>RpcDispatcher</code>
@@ -211,7 +210,7 @@
private long method_call_timeout=60000;
/** Thread pool used to asynchronously start our channel */
- private ThreadPool threadPool;
+ private Executor threadPool;
private final Map<String, Object> rpcHandlers = new ConcurrentHashMap<String, Object>();
private final Map<String, HAPartitionStateTransfer> stateHandlers = new HashMap<String, HAPartitionStateTransfer>();
@@ -367,7 +366,7 @@
// Do the channel connect in another thread while this
// thread starts the cache and does that channel connect
ChannelConnectTask task = new ChannelConnectTask(connectLatch);
- this.threadPool.run(task);
+ this.threadPool.execute(task);
}
if (this.cacheHandler != null)
@@ -1627,12 +1626,12 @@
return this.bindIntoJndi;
}
- public ThreadPool getThreadPool()
+ public Executor getThreadPool()
{
return this.threadPool;
}
- public void setThreadPool(ThreadPool threadPool)
+ public void setThreadPool(Executor threadPool)
{
this.threadPool = threadPool;
}
Modified: trunk/cluster/src/main/org/jboss/ha/jndi/DetachedHANamingService.java
===================================================================
--- trunk/cluster/src/main/org/jboss/ha/jndi/DetachedHANamingService.java 2009-05-19 21:51:25 UTC (rev 89139)
+++ trunk/cluster/src/main/org/jboss/ha/jndi/DetachedHANamingService.java 2009-05-19 23:08:17 UTC (rev 89140)
@@ -42,22 +42,19 @@
import java.util.Collections;
import java.util.HashMap;
import java.util.Map;
-
-import javax.management.ObjectName;
-import javax.net.ServerSocketFactory;
-
+import java.util.concurrent.Executor;
import org.jboss.ha.framework.interfaces.HAPartition;
import org.jboss.ha.jndi.spi.DistributedTreeManager;
import org.jboss.invocation.Invocation;
import org.jboss.invocation.MarshalledInvocation;
import org.jboss.logging.Logger;
import org.jboss.system.ServiceMBeanSupport;
-import org.jboss.util.threadpool.BasicThreadPool;
-import org.jboss.util.threadpool.BasicThreadPoolMBean;
-import org.jboss.util.threadpool.ThreadPool;
import org.jnp.interfaces.Naming;
import org.jnp.interfaces.NamingContext;
+import javax.management.ObjectName;
+import javax.net.ServerSocketFactory;
+
/**
* Management Bean for the protocol independent HA-JNDI service. This allows the
* naming service transport layer to be provided by a detached invoker service
@@ -155,7 +152,7 @@
/**
* The thread pool used to handle jnp stub lookup requests
*/
- ThreadPool lookupPool;
+ Executor lookupPool;
// Public --------------------------------------------------------
@@ -316,9 +313,9 @@
this.jnpServerSocketFactory = (ServerSocketFactory) clazz.newInstance();
}
- public void setLookupPool(BasicThreadPoolMBean poolMBean)
+ public void setLookupPool(Executor lookupPool)
{
- this.lookupPool = poolMBean.getInstance();
+ this.lookupPool = lookupPool;
}
/*
public void startService(HAPartition haPartition)
@@ -379,7 +376,7 @@
{
this.autoDiscovery = new AutomaticDiscovery();
this.autoDiscovery.start();
- this.lookupPool.run(this.autoDiscovery);
+ this.lookupPool.execute(this.autoDiscovery);
}
catch (Exception e)
{
@@ -487,12 +484,12 @@
this.log.error("Could not start HAJNDI bootstrap listener on port " + this.port, e);
}
- if (this.lookupPool == null)
+ if (lookupPool == null)
{
- this.lookupPool = new BasicThreadPool("HANamingBootstrap Pool");
+ throw new IllegalArgumentException("DetachedHANamingService started up without a thread pool");
}
AcceptHandler handler = new AcceptHandler();
- this.lookupPool.run(handler);
+ lookupPool.execute(handler);
}
// Protected -----------------------------------------------------
@@ -646,7 +643,7 @@
// Queue the response to the thread pool
DiscoveryRequestHandler handler = new DiscoveryRequestHandler(this.log,
packet, this.socket, this.ipAddress);
- DetachedHANamingService.this.lookupPool.run(handler);
+ lookupPool.execute(handler);
if (trace)
{
this.log.trace("Queued DiscoveryRequestHandler");
@@ -824,7 +821,7 @@
DetachedHANamingService.this.log.trace("Accepted bootstrap client: "+socket);
}
BootstrapRequestHandler handler = new BootstrapRequestHandler(socket);
- DetachedHANamingService.this.lookupPool.run(handler);
+ lookupPool.execute(handler);
}
catch (IOException e)
{
Modified: trunk/cluster/src/main/org/jboss/ha/jndi/DetachedHANamingServiceMBean.java
===================================================================
--- trunk/cluster/src/main/org/jboss/ha/jndi/DetachedHANamingServiceMBean.java 2009-05-19 21:51:25 UTC (rev 89139)
+++ trunk/cluster/src/main/org/jboss/ha/jndi/DetachedHANamingServiceMBean.java 2009-05-19 23:08:17 UTC (rev 89140)
@@ -24,13 +24,13 @@
import java.lang.reflect.Method;
import java.net.UnknownHostException;
import java.util.Map;
-import javax.management.ObjectName;
-
+import java.util.concurrent.Executor;
import org.jboss.ha.framework.interfaces.HAPartition;
import org.jboss.ha.jndi.spi.DistributedTreeManager;
import org.jboss.invocation.Invocation;
-import org.jboss.util.threadpool.BasicThreadPoolMBean;
+import javax.management.ObjectName;
+
/** The standard mbean management interface for the DetachedHANamingService
*
* @author Scott.Stark at jboss.org
@@ -146,11 +146,11 @@
/** Set the TTL (time-to-live) for autodiscovery IP multicast packets */
void setAutoDiscoveryTTL(int ttl);
- /** Set the thread pool used for the bootstrap and autodiscovery lookups
+ /** Set the executor used for the bootstrap and autodiscovery lookups
*
- * @param poolMBean
+ * @param executor the executor to use
*/
- public void setLookupPool(BasicThreadPoolMBean poolMBean);
+ void setLookupPool(Executor executor);
/** Expose the Naming service interface mapping as a read-only attribute
*
@@ -158,7 +158,7 @@
*
* @return A Map<Long hash, Method> of the Naming interface
*/
- public Map<Long, Method> getMethodMap();
+ Map<Long, Method> getMethodMap();
/** Expose the Naming service via JMX for detached invokers.
*
@@ -167,5 +167,5 @@
*
* @throws Exception Failed to invoke method.
*/
- public Object invoke(Invocation invocation) throws Exception;
+ Object invoke(Invocation invocation) throws Exception;
}
\ No newline at end of file
Modified: trunk/cluster/src/main/org/jboss/ha/timestamp/TimestampDiscrepancyService.java
===================================================================
--- trunk/cluster/src/main/org/jboss/ha/timestamp/TimestampDiscrepancyService.java 2009-05-19 21:51:25 UTC (rev 89139)
+++ trunk/cluster/src/main/org/jboss/ha/timestamp/TimestampDiscrepancyService.java 2009-05-19 23:08:17 UTC (rev 89140)
@@ -35,16 +35,16 @@
import java.util.TreeSet;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.CopyOnWriteArrayList;
-
-import org.apache.log4j.Logger;
+import java.util.concurrent.Executor;
import org.jboss.ha.framework.interfaces.ClusterNode;
import org.jboss.ha.framework.interfaces.DistributedReplicantManager;
+import org.jboss.ha.framework.interfaces.DistributedReplicantManager.ReplicantListener;
import org.jboss.ha.framework.interfaces.HAPartition;
-import org.jboss.ha.framework.interfaces.DistributedReplicantManager.ReplicantListener;
import org.jboss.kernel.spi.dependency.KernelControllerContext;
import org.jboss.kernel.spi.dependency.KernelControllerContextAware;
-import org.jboss.util.threadpool.ThreadPool;
+import org.apache.log4j.Logger;
+
/**
* Service that tracks {@link TimestampDiscrepancy} information for current
* and past members of the cluster.
@@ -82,7 +82,7 @@
private long minPurgeFrequency = 60 * 60 * 1000; // one hour
private final List<TimestampDiscrepancyObserver> observers = new CopyOnWriteArrayList<TimestampDiscrepancyObserver>();
private boolean coordinator;
- private ThreadPool threadPool;
+ private Executor threadPool;
private final Map<ClusterNode, Map<Server, TimestampDiscrepancy>> unresolvedRemoteDependencies = new HashMap<ClusterNode, Map<Server, TimestampDiscrepancy>>();
private boolean deadMembersKnown = false;
@@ -253,7 +253,7 @@
*
* @param threadPool the thread pool
*/
- public void setThreadPool(ThreadPool threadPool)
+ public void setThreadPool(Executor threadPool)
{
this.threadPool = threadPool;
}
@@ -737,7 +737,7 @@
{
if (threadPool != null)
{
- threadPool.run(r);
+ threadPool.execute(r);
}
else
{
Modified: trunk/connector/src/main/org/jboss/resource/work/JBossWorkManager.java
===================================================================
--- trunk/connector/src/main/org/jboss/resource/work/JBossWorkManager.java 2009-05-19 21:51:25 UTC (rev 89139)
+++ trunk/connector/src/main/org/jboss/resource/work/JBossWorkManager.java 2009-05-19 23:08:17 UTC (rev 89140)
@@ -21,6 +21,11 @@
*/
package org.jboss.resource.work;
+import java.util.concurrent.Executor;
+import org.jboss.system.ServiceMBeanSupport;
+import org.jboss.tm.JBossXATerminator;
+import org.jboss.util.threadpool.Task;
+
import javax.resource.spi.work.ExecutionContext;
import javax.resource.spi.work.Work;
import javax.resource.spi.work.WorkException;
@@ -28,11 +33,6 @@
import javax.resource.spi.work.WorkManager;
import javax.transaction.xa.Xid;
-import org.jboss.system.ServiceMBeanSupport;
-import org.jboss.tm.JBossXATerminator;
-import org.jboss.util.threadpool.Task;
-import org.jboss.util.threadpool.ThreadPool;
-
/**
* The work manager implementation
*
@@ -45,29 +45,29 @@
private boolean trace = log.isTraceEnabled();
/** The thread pool */
- private ThreadPool threadPool;
+ private Executor executor;
/** The xa terminator */
private JBossXATerminator xaTerminator;
- /**
+ /**
* Retrieve the thread pool
*
* @return the thread pool
*/
- public ThreadPool getThreadPool()
+ public Executor getExecutor()
{
- return threadPool;
+ return executor;
}
/**
* Set the thread pool
*
- * @param threadPool the thread pool
+ * @param executor the thread pool
*/
- public void setThreadPool(ThreadPool threadPool)
+ public void setExecutor(Executor executor)
{
- this.threadPool = threadPool;
+ this.executor = executor;
}
/**
@@ -182,7 +182,7 @@
if (trace)
log.trace("Submitting work to thread pool " + wrapper);
- threadPool.runTaskWrapper(wrapper);
+ executor.execute(wrapper);
if (trace)
log.trace("Submitted work to thread pool " + wrapper);
Modified: trunk/connector/src/resources/jca-sar/jca-jboss-beans.xml
===================================================================
--- trunk/connector/src/resources/jca-sar/jca-jboss-beans.xml 2009-05-19 21:51:25 UTC (rev 89139)
+++ trunk/connector/src/resources/jca-sar/jca-jboss-beans.xml 2009-05-19 23:08:17 UTC (rev 89140)
@@ -5,25 +5,17 @@
<!-- ==================================================================== -->
<!-- THREAD POOL -->
- <bean name="WorkManagerThreadPool" class="org.jboss.util.threadpool.BasicThreadPool">
+ <threads xmlns="urn:jboss:threads:1.0">
+ <thread-group name="WorkManagerThreadGroup" group-name="workmanager-threads"/>
+ <thread-factory name="WorkManagerThreadFactory" group="WorkManagerThreadGroup"/>
+ <thread-pool-executor name="WorkManagerThreadPool" thread-factory="WorkManagerThreadFactory" queue-length="1024">
+ <core-pool-size count="20"/>
+ <max-pool-size count="100"/>
+ <keepalive-time time="60" unit="seconds"/>
+ <reject-policy name="block"/>
+ </thread-pool-executor>
+ </threads>
- <!-- Expose via JMX -->
- <annotation>@org.jboss.aop.microcontainer.aspects.jmx.JMX(name="jboss.jca:service=WorkManagerThreadPool", exposedInterface=org.jboss.util.threadpool.BasicThreadPoolMBean.class)</annotation>
-
- <!-- The name that appears in thread names -->
- <property name="name">WorkManager</property>
-
- <!-- The maximum amount of work in the queue -->
- <property name="maximumQueueSize">1024</property>
-
- <!-- The maximum number of active threads -->
- <property name="maximumPoolSize">100</property>
-
- <!-- How long to keep threads alive after their last work (default one minute) -->
- <property name="keepAliveTime">60000</property>
-
- </bean>
-
<!-- WORK MANAGER -->
<bean name="WorkManager" class="org.jboss.resource.work.JBossWorkManager">
@@ -31,7 +23,7 @@
<annotation>@org.jboss.aop.microcontainer.aspects.jmx.JMX(name="jboss.jca:service=WorkManager", exposedInterface=org.jboss.resource.work.JBossWorkManagerMBean.class)</annotation>
<!-- The thread pool -->
- <property name="threadPool"><inject bean="WorkManagerThreadPool"/></property>
+ <property name="executor"><inject bean="WorkManagerThreadPool"/></property>
<!-- The xa terminator -->
<property name="XATerminator"><inject bean="TransactionManager" property="XATerminator"/></property>
Modified: trunk/jmx-remoting/src/main/org/jboss/mx/remoting/rmi/ClientNotifier.java
===================================================================
--- trunk/jmx-remoting/src/main/org/jboss/mx/remoting/rmi/ClientNotifier.java 2009-05-19 21:51:25 UTC (rev 89139)
+++ trunk/jmx-remoting/src/main/org/jboss/mx/remoting/rmi/ClientNotifier.java 2009-05-19 23:08:17 UTC (rev 89140)
@@ -21,31 +21,28 @@
*/
package org.jboss.mx.remoting.rmi;
+import EDU.oswego.cs.dl.util.concurrent.ReaderPreferenceReadWriteLock;
+import EDU.oswego.cs.dl.util.concurrent.SyncMap;
+import java.io.IOException;
+import java.util.ArrayList;
import java.util.HashMap;
-import java.util.Map;
+import java.util.Iterator;
import java.util.List;
-import java.util.ArrayList;
+import java.util.Map;
import java.util.Set;
-import java.util.Iterator;
-import java.util.TimerTask;
import java.util.Timer;
-import java.io.IOException;
+import java.util.TimerTask;
+import java.util.concurrent.Executor;
+import org.jboss.logging.Logger;
-import javax.management.ObjectName;
-import javax.management.NotificationListener;
import javax.management.Notification;
import javax.management.NotificationFilter;
-import javax.management.remote.rmi.RMIConnection;
+import javax.management.NotificationListener;
+import javax.management.ObjectName;
import javax.management.remote.NotificationResult;
import javax.management.remote.TargetedNotification;
+import javax.management.remote.rmi.RMIConnection;
-import org.jboss.logging.Logger;
-import org.jboss.util.threadpool.BasicThreadPool;
-import org.jboss.util.threadpool.BlockingMode;
-
-import EDU.oswego.cs.dl.util.concurrent.ReaderPreferenceReadWriteLock;
-import EDU.oswego.cs.dl.util.concurrent.SyncMap;
-
/**
* @author <a href="mailto:telrod at e2technologies.net">Tom Elrod</a>
*/
@@ -68,12 +65,10 @@
private long clientSequenceNumber = -1;
private int maxNotifications = 10;
- private BasicThreadPool notifierPool = null;
- private int maxNumberThreads = 20;
+ private Executor notifierPool = null;
private static final Logger log = Logger.getLogger(ClientNotifier.class);
-
public ClientNotifier(RMIConnection rmiConnection)
{
this.connection = rmiConnection;
@@ -81,13 +76,17 @@
fetchTimer = new Timer(true);
//TODO: -TME Need to make the fetch period configurable (JBREM-151)
fetchTimer.schedule(this, 1000, 1000);
-
- notifierPool = new BasicThreadPool("JBoss JMX Remoting client notifier");
- notifierPool.setMaximumPoolSize(maxNumberThreads);
- notifierPool.setBlockingMode(BlockingMode.WAIT);
}
- /**
+ public Executor getNotifierPool() {
+ return notifierPool;
+ }
+
+ public void setNotifierPool(final Executor notifierPool) {
+ this.notifierPool = notifierPool;
+ }
+
+ /**
* The action to be performed by this timer task.
*/
public void run()
@@ -152,7 +151,7 @@
}
}
};
- notifierPool.run(notifyRun);
+ notifierPool.execute(notifyRun);
}
}
}
Modified: trunk/server/src/etc/conf/all/jboss-service.xml
===================================================================
--- trunk/server/src/etc/conf/all/jboss-service.xml 2009-05-19 21:51:25 UTC (rev 89139)
+++ trunk/server/src/etc/conf/all/jboss-service.xml 2009-05-19 23:08:17 UTC (rev 89140)
@@ -44,28 +44,6 @@
-->
</mbean>
- <!-- A Thread pool service -->
- <mbean code="org.jboss.util.threadpool.BasicThreadPool"
- name="jboss.system:service=ThreadPool">
- <attribute name="Name">JBoss System Threads</attribute>
- <attribute name="ThreadGroupName">System Threads</attribute>
- <!-- How long a thread will live without any tasks in MS -->
- <attribute name="KeepAliveTime">60000</attribute>
- <!-- The max number of threads in the pool -->
- <attribute name="MaximumPoolSize">10</attribute>
- <!-- The max number of tasks before the queue is full -->
- <attribute name="MaximumQueueSize">1000</attribute>
- <!-- The behavior of the pool when a task is added and the queue is full.
- abort - a RuntimeException is thrown
- run - the calling thread executes the task
- wait - the calling thread blocks until the queue has room
- discard - the task is silently discarded without being run
- discardOldest - check to see if a task is about to complete and enque
- the new task if possible, else run the task in the calling thread
- -->
- <attribute name="BlockingMode">run</attribute>
- </mbean>
-
<!-- ==================================================================== -->
<!-- Log4j Initialization -->
<!-- ==================================================================== -->
@@ -81,7 +59,7 @@
<attribute name="Log4jQuietMode">true</attribute>
<!-- How frequently in seconds the ConfigurationURL is checked for changes -->
<attribute name="RefreshPeriod">60</attribute>
-
+
<!-- The value to assign to system property jboss.server.log.threshold
if it is not already set. This system property in turn controls
the logging threshold for the server.log file.
@@ -168,8 +146,9 @@
<attribute name="DownloadResources">false</attribute>
<!-- Use the default thread pool for dynamic class loading -->
- <depends optional-attribute-name="ThreadPool"
- proxy-type="attribute">jboss.system:service=ThreadPool</depends>
+ <attribute name="Executor">
+ <inject bean="ThreadPool"/>
+ </attribute>
</mbean>
<!-- ==================================================================== -->
@@ -231,8 +210,9 @@
</attribute>
<!-- The thread pool service used to control the bootstrap lookups -->
- <depends optional-attribute-name="LookupPool"
- proxy-type="attribute">jboss.system:service=ThreadPool</depends>
+ <attribute name="LookupPool">
+ <inject bean="ThreadPool"/>
+ </attribute>
<!-- An example of using the unifed invoker as the transport.
<depends optional-attribute-name="InvokerProxyFactory"
proxy-type="attribute">jboss:service=proxyFactory,type=unified,target=Naming</depends>
Modified: trunk/server/src/etc/conf/all/xmdesc/NamingService-xmbean.xml
===================================================================
--- trunk/server/src/etc/conf/all/xmdesc/NamingService-xmbean.xml 2009-05-19 21:51:25 UTC (rev 89139)
+++ trunk/server/src/etc/conf/all/xmdesc/NamingService-xmbean.xml 2009-05-19 23:08:17 UTC (rev 89140)
@@ -140,9 +140,9 @@
<type>boolean</type>
</attribute>
<attribute access="write-only" setMethod="setLookupPool">
- <description>The thread pool service used to control the bootstrap lookups</description>
+ <description>The executor used to run the bootstrap lookups</description>
<name>LookupPool</name>
- <type>org.jboss.util.threadpool.BasicThreadPoolMBean</type>
+ <type>java.util.concurrent.Executor</type>
</attribute>
<attribute access="write-only" setMethod="setInvokerProxyFactory">
<description>The detached invoker proxy factory to use for the naming
Modified: trunk/server/src/etc/conf/minimal/jboss-service.xml
===================================================================
--- trunk/server/src/etc/conf/minimal/jboss-service.xml 2009-05-19 21:51:25 UTC (rev 89139)
+++ trunk/server/src/etc/conf/minimal/jboss-service.xml 2009-05-19 23:08:17 UTC (rev 89140)
@@ -20,7 +20,7 @@
<mbean code="org.jboss.logging.Log4jService"
name="jboss.system:type=Log4jService,service=Logging"
xmbean-dd="resource:xmdesc/Log4jService-xmbean.xml">
- <attribute name="ConfigurationURL">resource:jboss-log4j.xml</attribute>
+ <attribute name="ConfigurationURL">resource:jboss-log4j.xml</attribute>
<!-- The value to assign to system property jboss.server.log.threshold
if it is not already set. This system property in turn controls
the logging threshold for the server.log file.
@@ -28,28 +28,6 @@
this value is ignored. -->
<attribute name="DefaultJBossServerLogThreshold">INFO</attribute>
</mbean>
-
- <!-- A Thread pool service -->
- <mbean code="org.jboss.util.threadpool.BasicThreadPool"
- name="jboss.system:service=ThreadPool">
- <attribute name="Name">JBoss System Threads</attribute>
- <attribute name="ThreadGroupName">System Threads</attribute>
- <!-- How long a thread will live without any tasks in MS -->
- <attribute name="KeepAliveTime">60000</attribute>
- <!-- The max number of threads in the pool -->
- <attribute name="MaximumPoolSize">10</attribute>
- <!-- The max number of tasks before the queue is full -->
- <attribute name="MaximumQueueSize">1000</attribute>
- <!-- The behavior of the pool when a task is added and the queue is full.
- abort - a RuntimeException is thrown
- run - the calling thread executes the task
- wait - the calling thread blocks until the queue has room
- discard - the task is silently discarded without being run
- discardOldest - check to see if a task is about to complete and enque
- the new task if possible, else run the task in the calling thread
- -->
- <attribute name="BlockingMode">run</attribute>
- </mbean>
<!-- ==================================================================== -->
<!-- JNDI -->
@@ -85,8 +63,9 @@
-->
<attribute name="RmiBindAddress">${jboss.bind.address}</attribute>
<!-- The thread pool service used to control the bootstrap lookups -->
- <depends optional-attribute-name="LookupPool"
- proxy-type="attribute">jboss.system:service=ThreadPool</depends>
+ <attribute name="LookupPool">
+ <inject bean="ThreadPool"/>
+ </attribute>
<!-- An example of using the unifed invoker as the transport.
<depends optional-attribute-name="InvokerProxyFactory"
proxy-type="attribute">jboss:service=proxyFactory,type=unified,target=Naming</depends>
Modified: trunk/server/src/etc/conf/standard/jboss-service.xml
===================================================================
--- trunk/server/src/etc/conf/standard/jboss-service.xml 2009-05-19 21:51:25 UTC (rev 89139)
+++ trunk/server/src/etc/conf/standard/jboss-service.xml 2009-05-19 23:08:17 UTC (rev 89140)
@@ -44,28 +44,6 @@
-->
</mbean>
- <!-- A Thread pool service -->
- <mbean code="org.jboss.util.threadpool.BasicThreadPool"
- name="jboss.system:service=ThreadPool">
- <attribute name="Name">JBoss System Threads</attribute>
- <attribute name="ThreadGroupName">System Threads</attribute>
- <!-- How long a thread will live without any tasks in MS -->
- <attribute name="KeepAliveTime">60000</attribute>
- <!-- The max number of threads in the pool -->
- <attribute name="MaximumPoolSize">10</attribute>
- <!-- The max number of tasks before the queue is full -->
- <attribute name="MaximumQueueSize">1000</attribute>
- <!-- The behavior of the pool when a task is added and the queue is full.
- abort - a RuntimeException is thrown
- run - the calling thread executes the task
- wait - the calling thread blocks until the queue has room
- discard - the task is silently discarded without being run
- discardOldest - check to see if a task is about to complete and enque
- the new task if possible, else run the task in the calling thread
- -->
- <attribute name="BlockingMode">run</attribute>
- </mbean>
-
<!-- ==================================================================== -->
<!-- Log4j Initialization -->
<!-- ==================================================================== -->
@@ -81,7 +59,7 @@
<attribute name="Log4jQuietMode">true</attribute>
<!-- How frequently in seconds the ConfigurationURL is checked for changes -->
<attribute name="RefreshPeriod">60</attribute>
-
+
<!-- The value to assign to system property jboss.server.log.threshold
if it is not already set. This system property in turn controls
the logging threshold for the server.log file.
@@ -165,8 +143,9 @@
<attribute name="DownloadResources">false</attribute>
<!-- Use the default thread pool for dynamic class loading -->
- <depends optional-attribute-name="ThreadPool"
- proxy-type="attribute">jboss.system:service=ThreadPool</depends>
+ <attribute name="Executor">
+ <inject bean="ThreadPool"/>
+ </attribute>
</mbean>
<!-- ==================================================================== -->
@@ -215,8 +194,9 @@
-->
<attribute name="RmiBindAddress">${jboss.bind.address}</attribute>
<!-- The thread pool service used to control the bootstrap lookups -->
- <depends optional-attribute-name="LookupPool"
- proxy-type="attribute">jboss.system:service=ThreadPool</depends>
+ <attribute name="LookupPool">
+ <inject bean="ThreadPool"/>
+ </attribute>
<!-- An example of using the unifed invoker as the transport.
<depends optional-attribute-name="InvokerProxyFactory"
proxy-type="attribute">jboss:service=proxyFactory,type=unified,target=Naming</depends>
Modified: trunk/server/src/etc/conf/web/jboss-service.xml
===================================================================
--- trunk/server/src/etc/conf/web/jboss-service.xml 2009-05-19 21:51:25 UTC (rev 89139)
+++ trunk/server/src/etc/conf/web/jboss-service.xml 2009-05-19 23:08:17 UTC (rev 89140)
@@ -44,28 +44,6 @@
-->
</mbean>
- <!-- A Thread pool service -->
- <mbean code="org.jboss.util.threadpool.BasicThreadPool"
- name="jboss.system:service=ThreadPool">
- <attribute name="Name">JBoss System Threads</attribute>
- <attribute name="ThreadGroupName">System Threads</attribute>
- <!-- How long a thread will live without any tasks in MS -->
- <attribute name="KeepAliveTime">60000</attribute>
- <!-- The max number of threads in the pool -->
- <attribute name="MaximumPoolSize">10</attribute>
- <!-- The max number of tasks before the queue is full -->
- <attribute name="MaximumQueueSize">1000</attribute>
- <!-- The behavior of the pool when a task is added and the queue is full.
- abort - a RuntimeException is thrown
- run - the calling thread executes the task
- wait - the calling thread blocks until the queue has room
- discard - the task is silently discarded without being run
- discardOldest - check to see if a task is about to complete and enque
- the new task if possible, else run the task in the calling thread
- -->
- <attribute name="BlockingMode">run</attribute>
- </mbean>
-
<!-- ==================================================================== -->
<!-- Log4j Initialization -->
<!-- ==================================================================== -->
@@ -81,7 +59,7 @@
<attribute name="Log4jQuietMode">true</attribute>
<!-- How frequently in seconds the ConfigurationURL is checked for changes -->
<attribute name="RefreshPeriod">60</attribute>
-
+
<!-- The value to assign to system property jboss.server.log.threshold
if it is not already set. This system property in turn controls
the logging threshold for the server.log file.
@@ -180,8 +158,9 @@
-->
<attribute name="RmiBindAddress">${jboss.bind.address}</attribute>
<!-- The thread pool service used to control the bootstrap lookups -->
- <depends optional-attribute-name="LookupPool"
- proxy-type="attribute">jboss.system:service=ThreadPool</depends>
+ <attribute name="LookupPool">
+ <inject bean="ThreadPool"/>
+ </attribute>
<!-- An example of using the unifed invoker as the transport.
<depends optional-attribute-name="InvokerProxyFactory"
proxy-type="attribute">jboss:service=proxyFactory,type=unified,target=Naming</depends>
Added: trunk/server/src/etc/deploy/thread-pool-jboss-beans.xml
===================================================================
--- trunk/server/src/etc/deploy/thread-pool-jboss-beans.xml (rev 0)
+++ trunk/server/src/etc/deploy/thread-pool-jboss-beans.xml 2009-05-19 23:08:17 UTC (rev 89140)
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+ ~ JBoss, Home of Professional Open Source.
+ ~ Copyright 2009, Red Hat Middleware LLC, and individual contributors
+ ~ as indicated by the @author tags. See the copyright.txt file in the
+ ~ distribution for a full listing of individual contributors.
+ ~
+ ~ This is free software; you can redistribute it and/or modify it
+ ~ under the terms of the GNU Lesser General Public License as
+ ~ published by the Free Software Foundation; either version 2.1 of
+ ~ the License, or (at your option) any later version.
+ ~
+ ~ This software is distributed in the hope that it will be useful,
+ ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ ~ Lesser General Public License for more details.
+ ~
+ ~ You should have received a copy of the GNU Lesser General Public
+ ~ License along with this software; if not, write to the Free
+ ~ Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ ~ 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ -->
+
+<!-- Basic system thread pool deployment -->
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+ <threads xmlns="urn:jboss:threads:1.0">
+ <thread-group name="SystemThreadFactoryGroup" group-name="System Threads"/>
+ <thread-factory name="SystemThreadFactory" group="SystemThreadFactoryGroup"/>
+ <thread-pool-executor name="ThreadPool" thread-factory="SystemThreadFactory" queue-length="1000">
+ <core-pool-size count="5"/>
+ <max-pool-size count="10"/>
+ <keepalive-time time="30" unit="seconds"/>
+ <reject-policy name="block"/>
+ </thread-pool-executor>
+ </threads>
+</deployment>
\ No newline at end of file
Modified: trunk/server/src/main/org/jboss/naming/NamingService.java
===================================================================
--- trunk/server/src/main/org/jboss/naming/NamingService.java 2009-05-19 21:51:25 UTC (rev 89139)
+++ trunk/server/src/main/org/jboss/naming/NamingService.java 2009-05-19 23:08:17 UTC (rev 89140)
@@ -23,8 +23,8 @@
import java.io.IOException;
import java.io.InputStream;
-import java.lang.reflect.Method;
import java.lang.reflect.InvocationTargetException;
+import java.lang.reflect.Method;
import java.lang.reflect.UndeclaredThrowableException;
import java.net.UnknownHostException;
import java.rmi.server.RMIClientSocketFactory;
@@ -34,19 +34,18 @@
import java.util.HashMap;
import java.util.Map;
import java.util.Properties;
-import javax.net.ServerSocketFactory;
-
+import java.util.concurrent.Executor;
import org.jboss.invocation.Invocation;
import org.jboss.invocation.MarshalledInvocation;
import org.jboss.invocation.jrmp.server.JRMPProxyFactoryMBean;
import org.jboss.system.ServiceMBeanSupport;
-import org.jboss.util.threadpool.ThreadPool;
-import org.jboss.util.threadpool.BasicThreadPoolMBean;
-import org.jnp.interfaces.Naming;
import org.jnp.interfaces.MarshalledValuePair;
+import org.jnp.interfaces.Naming;
import org.jnp.server.Main;
import org.jnp.server.NamingBean;
+import javax.net.ServerSocketFactory;
+
/**
* A JBoss service that starts the jnp JNDI server.
*
@@ -114,16 +113,16 @@
return namingBean.getNamingInstance();
}
- /** Set the thread pool used for the bootstrap lookups
+ /**
+ * Set the executor used for the bootstrap lookups
*
* @jmx:managed-attribute
*
- * @param poolMBean
+ * @param executor the executor
*/
- public void setLookupPool(BasicThreadPoolMBean poolMBean)
+ public void setLookupPool(Executor executor)
{
- ThreadPool lookupPool = poolMBean.getInstance();
- namingMain.setLookupPool(lookupPool);
+ namingMain.setLookupExector(executor);
}
/** Get the call by value flag for jndi lookups.
Modified: trunk/server/src/main/org/jboss/naming/NamingServiceMBean.java
===================================================================
--- trunk/server/src/main/org/jboss/naming/NamingServiceMBean.java 2009-05-19 21:51:25 UTC (rev 89139)
+++ trunk/server/src/main/org/jboss/naming/NamingServiceMBean.java 2009-05-19 23:08:17 UTC (rev 89140)
@@ -21,6 +21,8 @@
*/
package org.jboss.naming;
+import java.util.concurrent.Executor;
+
/**
* MBean interface.
*/
@@ -30,9 +32,11 @@
public static final javax.management.ObjectName OBJECT_NAME = org.jboss.mx.util.ObjectNameFactory.create("jboss:service=Naming");
/**
- * Set the thread pool used for the bootstrap lookups
- * @param poolMBean */
- void setLookupPool(org.jboss.util.threadpool.BasicThreadPoolMBean poolMBean) ;
+ * Set the executor used for the bootstrap lookups.
+ *
+ * @param executor the executor
+ */
+ void setLookupPool(Executor executor) ;
/**
* Get the call by value flag for jndi lookups.
Modified: trunk/server/src/main/org/jboss/web/WebServer.java
===================================================================
--- trunk/server/src/main/org/jboss/web/WebServer.java 2009-05-19 21:51:25 UTC (rev 89139)
+++ trunk/server/src/main/org/jboss/web/WebServer.java 2009-05-19 23:08:17 UTC (rev 89140)
@@ -21,6 +21,7 @@
*/
package org.jboss.web;
+import EDU.oswego.cs.dl.util.concurrent.ConcurrentReaderHashMap;
import java.io.BufferedInputStream;
import java.io.BufferedReader;
import java.io.ByteArrayOutputStream;
@@ -34,13 +35,9 @@
import java.net.Socket;
import java.net.URL;
import java.util.Properties;
-
+import java.util.concurrent.Executor;
import org.jboss.logging.Logger;
-import org.jboss.util.threadpool.BasicThreadPool;
-import org.jboss.util.threadpool.BasicThreadPoolMBean;
-import EDU.oswego.cs.dl.util.concurrent.ConcurrentReaderHashMap;
-
/**
* A mini webserver that should be embedded in another application. It can
* server any file that is available from classloaders that are registered with
@@ -113,7 +110,7 @@
/**
* The thread pool used to manage listening threads
*/
- private BasicThreadPoolMBean threadPool;
+ private Executor executor;
// Public --------------------------------------------------------
@@ -193,14 +190,14 @@
downloadResources = flag;
}
- public BasicThreadPoolMBean getThreadPool()
+ public Executor getThreadPool()
{
- return threadPool;
+ return executor;
}
- public void setThreadPool(BasicThreadPoolMBean threadPool)
+ public void setThreadPool(Executor executor)
{
- this.threadPool = threadPool;
+ this.executor = executor;
}
/**
@@ -218,8 +215,8 @@
*/
public void start() throws Exception
{
- if (threadPool == null)
- threadPool = new BasicThreadPool("ClassLoadingPool");
+ if (executor == null)
+ throw new IllegalArgumentException("Required property 'executor' not specified");
try
{
@@ -492,7 +489,7 @@
protected void listen()
{
- threadPool.getInstance().run(this);
+ executor.execute(this);
}
/**
Modified: trunk/server/src/main/org/jboss/web/WebService.java
===================================================================
--- trunk/server/src/main/org/jboss/web/WebService.java 2009-05-19 21:51:25 UTC (rev 89139)
+++ trunk/server/src/main/org/jboss/web/WebService.java 2009-05-19 23:08:17 UTC (rev 89140)
@@ -26,15 +26,14 @@
import java.net.UnknownHostException;
import java.util.Enumeration;
import java.util.Properties;
-
-import javax.management.MBeanServer;
-import javax.management.ObjectName;
-
+import java.util.concurrent.Executor;
import org.jboss.bootstrap.spi.ServerConfig;
import org.jboss.bootstrap.spi.util.ServerConfigUtil;
import org.jboss.system.ServiceMBeanSupport;
-import org.jboss.util.threadpool.BasicThreadPoolMBean;
+import javax.management.MBeanServer;
+import javax.management.ObjectName;
+
/**
* The WebService implementation. It configures a WebServer instance to
* perform dynamic class and resource loading.
@@ -209,9 +208,9 @@
* @jmx:managed-attribute
*
*/
- public void setThreadPool(BasicThreadPoolMBean threadPool)
+ public void setExecutor(Executor executor)
{
- server.setThreadPool(threadPool);
+ server.setThreadPool(executor);
}
/**
Modified: trunk/server/src/main/org/jboss/web/WebServiceMBean.java
===================================================================
--- trunk/server/src/main/org/jboss/web/WebServiceMBean.java 2009-05-19 21:51:25 UTC (rev 89139)
+++ trunk/server/src/main/org/jboss/web/WebServiceMBean.java 2009-05-19 23:08:17 UTC (rev 89140)
@@ -23,13 +23,12 @@
import java.net.URL;
import java.net.UnknownHostException;
-
-import javax.management.ObjectName;
-
+import java.util.concurrent.Executor;
import org.jboss.mx.util.ObjectNameFactory;
import org.jboss.system.ServiceMBean;
-import org.jboss.util.threadpool.BasicThreadPoolMBean;
+import javax.management.ObjectName;
+
/**
* WebService MBean interface
*
@@ -68,7 +67,7 @@
boolean getDownloadResources();
/** The thread pool used for the WebServer class loading. */
- void setThreadPool(BasicThreadPoolMBean threadPool);
+ void setExecutor(Executor executor);
/** The RMI codebase URL. */
String getCodebase();
@@ -78,5 +77,4 @@
URL addClassLoader(ClassLoader cl);
void removeClassLoader(ClassLoader cl);
-
}
Modified: trunk/varia/src/resources/services/snmp/deploy/attributes.xml
===================================================================
--- trunk/varia/src/resources/services/snmp/deploy/attributes.xml 2009-05-19 21:51:25 UTC (rev 89139)
+++ trunk/varia/src/resources/services/snmp/deploy/attributes.xml 2009-05-19 23:08:17 UTC (rev 89140)
@@ -18,7 +18,7 @@
<attribute name="MaxMemory" oid=".3"/>
</mbean>
- <mbean name="jboss.system:service=ThreadPool">
+ <mbean name="ThreadPool">
<attribute name="QueueSize" oid=".1.2.3.4.1.4"/>
</mbean>
More information about the jboss-cvs-commits
mailing list