Author: rmannibucau
Date: Thu Jan 10 09:51:46 2013
New Revision: 1431238
URL: http://svn.apache.org/viewvc?rev=1431238&view=rev
Log:
using @Internal to find our internals MBeans and cache them instead of using
classloader + qualified name
Modified:
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/ReloadableEntityManagerFactory.java
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/assembler/monitoring/JMXContainer.java
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/assembler/monitoring/JMXDeployer.java
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/monitoring/DynamicMBeanWrapper.java
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/dbcp/JMXBasicDataSource.java
Modified:
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/ReloadableEntityManagerFactory.java
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/ReloadableEntityManagerFactory.java?rev=1431238&r1=1431237&r2=1431238&view=diff
==============================================================================
---
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/ReloadableEntityManagerFactory.java
(original)
+++
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/ReloadableEntityManagerFactory.java
Thu Jan 10 09:51:46 2013
@@ -70,6 +70,7 @@ import java.util.Map;
import java.util.Properties;
import java.util.concurrent.TimeUnit;
+@Internal
public class ReloadableEntityManagerFactory implements EntityManagerFactory {
private static final Logger LOGGER =
Logger.getInstance(LogCategory.OPENEJB, ReloadableEntityManagerFactory.class);
Modified:
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/assembler/monitoring/JMXContainer.java
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/assembler/monitoring/JMXContainer.java?rev=1431238&r1=1431237&r2=1431238&view=diff
==============================================================================
---
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/assembler/monitoring/JMXContainer.java
(original)
+++
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/assembler/monitoring/JMXContainer.java
Thu Jan 10 09:51:46 2013
@@ -18,12 +18,14 @@ package org.apache.openejb.assembler.mon
import org.apache.openejb.BeanContext;
import org.apache.openejb.Container;
+import org.apache.openejb.api.internal.Internal;
import org.apache.openejb.api.jmx.Description;
import org.apache.openejb.api.jmx.ManagedAttribute;
import org.apache.openejb.assembler.classic.ContainerInfo;
import java.util.Map;
+@Internal
@Description("describe a container")
public class JMXContainer {
private final Container container;
Modified:
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/assembler/monitoring/JMXDeployer.java
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/assembler/monitoring/JMXDeployer.java?rev=1431238&r1=1431237&r2=1431238&view=diff
==============================================================================
---
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/assembler/monitoring/JMXDeployer.java
(original)
+++
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/assembler/monitoring/JMXDeployer.java
Thu Jan 10 09:51:46 2013
@@ -16,20 +16,21 @@
*/
package org.apache.openejb.assembler.monitoring;
-import java.util.Collection;
-import java.util.Properties;
import org.apache.openejb.api.jmx.Description;
import org.apache.openejb.api.jmx.MBean;
import org.apache.openejb.api.jmx.ManagedAttribute;
import org.apache.openejb.api.jmx.ManagedOperation;
-import javax.naming.Context;
-import javax.naming.InitialContext;
-import javax.naming.NamingException;
import org.apache.openejb.assembler.Deployer;
import org.apache.openejb.assembler.DeployerEjb;
import org.apache.openejb.assembler.classic.AppInfo;
import org.apache.openejb.core.LocalInitialContextFactory;
+import javax.naming.Context;
+import javax.naming.InitialContext;
+import javax.naming.NamingException;
+import java.util.Collection;
+import java.util.Properties;
+
@MBean
@Description("OpenEJB Deployer")
public class JMXDeployer {
Modified:
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/monitoring/DynamicMBeanWrapper.java
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/monitoring/DynamicMBeanWrapper.java?rev=1431238&r1=1431237&r2=1431238&view=diff
==============================================================================
---
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/monitoring/DynamicMBeanWrapper.java
(original)
+++
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/monitoring/DynamicMBeanWrapper.java
Thu Jan 10 09:51:46 2013
@@ -16,6 +16,7 @@
*/
package org.apache.openejb.monitoring;
+import org.apache.openejb.api.internal.Internal;
import org.apache.openejb.api.jmx.Description;
import org.apache.openejb.api.jmx.MBean;
import org.apache.openejb.api.jmx.ManagedAttribute;
@@ -214,7 +215,7 @@ public class DynamicMBeanWrapper impleme
operationInfos.toArray(new
MBeanOperationInfo[operationInfos.size()]),
notificationInfos.toArray(new
MBeanNotificationInfo[notificationInfos.size()]));
- if (annotatedMBean.getName().startsWith("org.apache.openejb") &&
classloader == DynamicMBeanWrapper.class.getClassLoader()) {
+ if (annotatedMBean.getAnnotation(Internal.class) != null) {
CACHE.put(annotatedMBean, new CacheInfo(info, getters,
setters, operations));
}
} else {
Modified:
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/dbcp/JMXBasicDataSource.java
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/dbcp/JMXBasicDataSource.java?rev=1431238&r1=1431237&r2=1431238&view=diff
==============================================================================
---
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/dbcp/JMXBasicDataSource.java
(original)
+++
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/dbcp/JMXBasicDataSource.java
Thu Jan 10 09:51:46 2013
@@ -19,6 +19,8 @@ package org.apache.openejb.resource.jdbc
import java.sql.Connection;
import java.sql.SQLException;
import java.sql.Statement;
+
+import org.apache.openejb.api.internal.Internal;
import org.apache.openejb.api.jmx.Description;
import javax.management.MBeanServer;
import org.apache.openejb.api.jmx.ManagedAttribute;
@@ -29,6 +31,7 @@ import org.apache.openejb.monitoring.Loc
import org.apache.openejb.monitoring.ObjectNameBuilder;
// @MBean: don't put it since it is not a pojo
+@Internal
@SuppressWarnings("UnusedDeclaration")
@Description("describe a datasource pool")
public class JMXBasicDataSource {