org.huihoo.jfox.jmx
Class MBeanIntrospectorSupport

java.lang.Object
  |
  +--org.huihoo.jfox.jmx.MBeanIntrospectorSupport
All Implemented Interfaces:
MBeanIntrospector

public class MBeanIntrospectorSupport
extends java.lang.Object
implements MBeanIntrospector

introspector(check and instantiate) MBean Class after MBeanLoaderSupport have load a MBean

Author:
Young Yang

Method Summary
 java.lang.Class checkCompliance(java.lang.Class mbeanClass)
          a MBean Class must be a class and must implement a MBean Inteface or DynamicMBean interface and the interface must be public
 void checkInstantiate(java.lang.Class mbeanClass)
          testing that a MBean of a given class can be instantiated by the MBean server for MBeanServer.instantiate This method checks that: The given class is a concrete class.
static MBeanIntrospector getInstance()
           
 java.lang.Class getMBeanInterface(java.lang.Class mbeanClass)
           
 boolean isDynamic(java.lang.Class mbeanClass)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

getInstance

public static MBeanIntrospector getInstance()

checkInstantiate

public void checkInstantiate(java.lang.Class mbeanClass)
                      throws ReflectionException
testing that a MBean of a given class can be instantiated by the MBean server for MBeanServer.instantiate This method checks that: The given class is a concrete class. The given class exposes at least one public constructor. If these conditions are not met, throws a NotCompliantMBeanException.
Specified by:
checkInstantiate in interface MBeanIntrospector
Throws:
ReflectionException -  

isDynamic

public boolean isDynamic(java.lang.Class mbeanClass)
Specified by:
isDynamic in interface MBeanIntrospector

checkCompliance

public java.lang.Class checkCompliance(java.lang.Class mbeanClass)
                                throws NotCompliantMBeanException
a MBean Class must be a class and must implement a MBean Inteface or DynamicMBean interface and the interface must be public
Specified by:
checkCompliance in interface MBeanIntrospector
Throws:
NotCompliantMBeanException -  

getMBeanInterface

public java.lang.Class getMBeanInterface(java.lang.Class mbeanClass)
Specified by:
getMBeanInterface in interface MBeanIntrospector