[jboss-cvs] JBossAS SVN: r111117 - in projects/jboss-jca/trunk: deployers/src/main/java/org/jboss/jca/deployers/common and 3 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Thu Apr 7 11:09:08 EDT 2011
Author: jesper.pedersen
Date: 2011-04-07 11:09:07 -0400 (Thu, 07 Apr 2011)
New Revision: 111117
Modified:
projects/jboss-jca/trunk/core/src/main/java/org/jboss/jca/core/api/management/ConnectionFactory.java
projects/jboss-jca/trunk/deployers/src/main/java/org/jboss/jca/deployers/common/AbstractResourceAdapterDeployer.java
projects/jboss-jca/trunk/deployers/src/main/java/org/jboss/jca/deployers/fungal/AbstractFungalRADeployer.java
projects/jboss-jca/trunk/rhq/src/main/java/org/jboss/jca/rhq/ra/McfResourceComponent.java
projects/jboss-jca/trunk/rhq/src/test/java/org/jboss/jca/rhq/test/XATestCase.java
Log:
[JBJCA-542] Statistics support (Part 5)
Modified: projects/jboss-jca/trunk/core/src/main/java/org/jboss/jca/core/api/management/ConnectionFactory.java
===================================================================
--- projects/jboss-jca/trunk/core/src/main/java/org/jboss/jca/core/api/management/ConnectionFactory.java 2011-04-07 14:16:15 UTC (rev 111116)
+++ projects/jboss-jca/trunk/core/src/main/java/org/jboss/jca/core/api/management/ConnectionFactory.java 2011-04-07 15:09:07 UTC (rev 111117)
@@ -34,6 +34,9 @@
*/
public class ConnectionFactory
{
+ /** The connection factory */
+ private WeakReference<Object> connectionFactory;
+
/** The managed connection factory */
private ManagedConnectionFactory managedConnectionFactory;
@@ -48,23 +51,37 @@
/**
* Constructor
+ * @param cf The connection factory
* @param mcf The managed connection factory instance
*/
- public ConnectionFactory(javax.resource.spi.ManagedConnectionFactory mcf)
+ public ConnectionFactory(Object cf, javax.resource.spi.ManagedConnectionFactory mcf)
{
+ this.connectionFactory = new WeakReference<Object>(cf);
this.managedConnectionFactory = new ManagedConnectionFactory(mcf);
this.pool = null;
this.poolConfiguration = null;
}
/**
+ * Get the connection factory instance.
+ *
+ * Note, that the value may be <code>null</code> if the connection factory was
+ * undeployed and this object wasn't cleared up correctly.
+ * @return The instance
+ */
+ public Object getConnectionFactory()
+ {
+ return connectionFactory.get();
+ }
+
+ /**
* Get the managed connection factory instance.
*
* Note, that the value may be <code>null</code> if the managed connection factory was
* undeployed and this object wasn't cleared up correctly.
* @return The instance
*/
- public ManagedConnectionFactory getMcf()
+ public ManagedConnectionFactory getManagedConnectionFactory()
{
return managedConnectionFactory;
}
@@ -117,7 +134,6 @@
this.poolConfiguration = new WeakReference<PoolConfiguration>(pc);
}
-
/**
* Get the jndiName.
*
@@ -147,8 +163,10 @@
{
StringBuilder sb = new StringBuilder();
- sb.append("ManagedConnectionFactory@").append(Integer.toHexString(System.identityHashCode(this)));
+ sb.append("ConnectionFactory@").append(Integer.toHexString(System.identityHashCode(this)));
sb.append("[jndiName=").append(getJndiName());
+ sb.append(" connectionFactory=").append(getConnectionFactory());
+ sb.append(" managedConnectionFactory=").append(getManagedConnectionFactory());
sb.append(" pool=").append(getPool());
sb.append(" poolconfiguration=").append(getPoolConfiguration());
sb.append("]");
Modified: projects/jboss-jca/trunk/deployers/src/main/java/org/jboss/jca/deployers/common/AbstractResourceAdapterDeployer.java
===================================================================
--- projects/jboss-jca/trunk/deployers/src/main/java/org/jboss/jca/deployers/common/AbstractResourceAdapterDeployer.java 2011-04-07 14:16:15 UTC (rev 111116)
+++ projects/jboss-jca/trunk/deployers/src/main/java/org/jboss/jca/deployers/common/AbstractResourceAdapterDeployer.java 2011-04-07 15:09:07 UTC (rev 111117)
@@ -1144,13 +1144,13 @@
if (activateDeployment)
{
org.jboss.jca.core.api.management.ConnectionFactory mgtCf =
- new org.jboss.jca.core.api.management.ConnectionFactory(mcf);
+ new org.jboss.jca.core.api.management.ConnectionFactory(cf, mcf);
mgtCf.setPoolConfiguration(pc);
mgtCf.setPool(pool);
mgtCf.setJndiName(jndiName);
- mgtCf.getMcf().getConfigProperties().
+ mgtCf.getManagedConnectionFactory().getConfigProperties().
addAll(createManagementView(ra10.getConfigProperties()));
mgtConnector.getConnectionFactories().add(mgtCf);
@@ -1597,13 +1597,13 @@
if (activateDeployment)
{
org.jboss.jca.core.api.management.ConnectionFactory mgtCf =
- new org.jboss.jca.core.api.management.ConnectionFactory(mcf);
+ new org.jboss.jca.core.api.management.ConnectionFactory(cf, mcf);
mgtCf.setPoolConfiguration(pc);
mgtCf.setPool(pool);
mgtCf.setJndiName(jndiName);
- mgtCf.getMcf().getConfigProperties().
+ mgtCf.getManagedConnectionFactory().getConfigProperties().
addAll(createManagementView(cdMeta.getConfigProperties()));
mgtConnector.getConnectionFactories().add(mgtCf);
Modified: projects/jboss-jca/trunk/deployers/src/main/java/org/jboss/jca/deployers/fungal/AbstractFungalRADeployer.java
===================================================================
--- projects/jboss-jca/trunk/deployers/src/main/java/org/jboss/jca/deployers/fungal/AbstractFungalRADeployer.java 2011-04-07 14:16:15 UTC (rev 111116)
+++ projects/jboss-jca/trunk/deployers/src/main/java/org/jboss/jca/deployers/fungal/AbstractFungalRADeployer.java 2011-04-07 15:09:07 UTC (rev 111117)
@@ -449,15 +449,29 @@
server.registerMBean(raDMB, raON);
ons.add(raON);
+
+ if (mgtRa.getStatistics() != null)
+ {
+ String raSName = baseName + ",type=ResourceAdapterStatistics,class=" +
+ getClassName(mgtRa.getResourceAdapter().getClass().getName());
+
+ DynamicMBean raSDMB = JMX.createMBean(mgtRa.getStatistics(),
+ "Resource adapter statistics");
+ ObjectName raSON = new ObjectName(raSName);
+
+ server.registerMBean(raSDMB, raSON);
+
+ ons.add(raSON);
+ }
}
}
for (org.jboss.jca.core.api.management.ConnectionFactory mgtCf :
mgtConnector.getConnectionFactories())
{
- if (mgtCf.getMcf() != null)
+ if (mgtCf.getManagedConnectionFactory() != null)
{
- org.jboss.jca.core.api.management.ManagedConnectionFactory mgtMcf = mgtCf.getMcf();
+ org.jboss.jca.core.api.management.ManagedConnectionFactory mgtMcf = mgtCf.getManagedConnectionFactory();
Set<String> writeable = new HashSet<String>();
Set<String> excludeAttributes = new HashSet<String>();
@@ -488,12 +502,26 @@
server.registerMBean(mcfDMB, mcfON);
ons.add(mcfON);
+
+ if (mgtMcf.getStatistics() != null)
+ {
+ String mcfSName = baseName + ",type=ManagedConnectionFactoryStatistics,class=" +
+ getClassName(mgtMcf.getManagedConnectionFactory().getClass().getName());
+
+ DynamicMBean mcfSDMB = JMX.createMBean(mgtMcf.getStatistics(),
+ "Managed connection factory statistics");
+ ObjectName mcfSON = new ObjectName(mcfSName);
+
+ server.registerMBean(mcfSDMB, mcfSON);
+
+ ons.add(mcfSON);
+ }
}
if (mgtCf.getPoolConfiguration() != null)
{
- String mcfPCName = baseName + ",type=ManagedConnectionFactory,class=" +
- getClassName(mgtCf.getMcf().getClass().getName()) +
+ String mcfPCName = baseName + ",type=ConnectionFactory,class=" +
+ getClassName(mgtCf.getConnectionFactory().getClass().getName()) +
",subcategory=PoolConfiguration";
DynamicMBean mcfPCDMB = JMX.createMBean(mgtCf.getPoolConfiguration(), "Pool configuration");
@@ -506,15 +534,28 @@
if (mgtCf.getPool() != null)
{
- String mcfPName = baseName + ",type=ManagedConnectionFactory,class=" +
- getClassName(mgtCf.getMcf().getClass().getName()) + ",subcategory=Pool";
+ String cfPName = baseName + ",type=ConnectionFactory,class=" +
+ getClassName(mgtCf.getConnectionFactory().getClass().getName()) + ",subcategory=Pool";
- DynamicMBean mcfPDMB = JMX.createMBean(mgtCf.getPool(), "Pool");
- ObjectName mcfPON = new ObjectName(mcfPName);
+ DynamicMBean cfPDMB = JMX.createMBean(mgtCf.getPool(), "Pool");
+ ObjectName cfPON = new ObjectName(cfPName);
- server.registerMBean(mcfPDMB, mcfPON);
+ server.registerMBean(cfPDMB, cfPON);
- ons.add(mcfPON);
+ ons.add(cfPON);
+
+ if (mgtCf.getPool().getStatistics() != null)
+ {
+ String cfPSName = baseName + ",type=ConnectionFactory,class=" +
+ getClassName(mgtCf.getConnectionFactory().getClass().getName()) + ",subcategory=PoolStatistics";
+
+ DynamicMBean cfPSDMB = JMX.createMBean(mgtCf.getPool().getStatistics(), "Pool statistics");
+ ObjectName cfPSON = new ObjectName(cfPSName);
+
+ server.registerMBean(cfPSDMB, cfPSON);
+
+ ons.add(cfPSON);
+ }
}
}
@@ -552,6 +593,20 @@
server.registerMBean(aoDMB, aoON);
ons.add(aoON);
+
+ if (mgtAo.getStatistics() != null)
+ {
+ String aoSName = baseName + ",type=AdminObjectStatistics,class=" +
+ getClassName(mgtAo.getAdminObject().getClass().getName());
+
+ DynamicMBean aoSDMB = JMX.createMBean(mgtAo.getStatistics(),
+ "Admin object statistics");
+ ObjectName aoSON = new ObjectName(aoSName);
+
+ server.registerMBean(aoSDMB, aoSON);
+
+ ons.add(aoSON);
+ }
}
}
Modified: projects/jboss-jca/trunk/rhq/src/main/java/org/jboss/jca/rhq/ra/McfResourceComponent.java
===================================================================
--- projects/jboss-jca/trunk/rhq/src/main/java/org/jboss/jca/rhq/ra/McfResourceComponent.java 2011-04-07 14:16:15 UTC (rev 111116)
+++ projects/jboss-jca/trunk/rhq/src/main/java/org/jboss/jca/rhq/ra/McfResourceComponent.java 2011-04-07 15:09:07 UTC (rev 111117)
@@ -56,7 +56,7 @@
private ManagedConnectionFactory getManagedConnectionFactory()
{
CfResourceComponent parentRes = (CfResourceComponent)getResourceContext().getParentResourceComponent();
- return parentRes.getConnectionFactory().getMcf();
+ return parentRes.getConnectionFactory().getManagedConnectionFactory();
}
/**
Modified: projects/jboss-jca/trunk/rhq/src/test/java/org/jboss/jca/rhq/test/XATestCase.java
===================================================================
--- projects/jboss-jca/trunk/rhq/src/test/java/org/jboss/jca/rhq/test/XATestCase.java 2011-04-07 14:16:15 UTC (rev 111116)
+++ projects/jboss-jca/trunk/rhq/src/test/java/org/jboss/jca/rhq/test/XATestCase.java 2011-04-07 15:09:07 UTC (rev 111117)
@@ -371,7 +371,7 @@
ManagementRepository manRepo = ManagementRepositoryManager.getManagementRepository();
Connector connector = ManagementRepositoryHelper.getConnectorByUniqueId(manRepo, "xa.rar");
- ManagedConnectionFactory mcf = connector.getConnectionFactories().get(0).getMcf();
+ ManagedConnectionFactory mcf = connector.getConnectionFactories().get(0).getManagedConnectionFactory();
XAManagedConnectionFactory xaMcf = (XAManagedConnectionFactory)mcf.getManagedConnectionFactory();
assertEquals("new-rhq", xaMcf.getManagement());
@@ -500,7 +500,7 @@
ManagementRepository manRepo = EmbeddedJcaDiscover.getInstance().getManagementRepository();
Connector xaConnector = manRepo.getConnectors().get(0);
AdminObject ao = xaConnector.getAdminObjects().get(0);
- ManagedConnectionFactory mcf = xaConnector.getConnectionFactories().get(0).getMcf();
+ ManagedConnectionFactory mcf = xaConnector.getConnectionFactories().get(0).getManagedConnectionFactory();
ResourceAdapter ra = xaConnector.getResourceAdapter();
// ao-config
More information about the jboss-cvs-commits
mailing list