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 {


Reply via email to