## mx4j.server
Class MBeanIntrospector

    java.lang.Object
      mx4j.server.MBeanIntrospector

public class MBeanIntrospector
extends java.lang.Object

Introspector for MBeans.

Main purposes of this class are:

- Given an mbean, gather all information regarding it into a `MBeanMetaData` instance, see `introspect(mx4j.server.MBeanMetaData)`
- Given an introspected MBeanMetaData, decide if the MBean is compliant or not.
- Act as a factory for `MBeanInvoker`s

The following system properties are used to control this class' behavior:

- mx4j.strict.mbean.interface, if set to 'no' then are treated as standard MBeans also classes that implement management interfaces beloging to different packages or that are inner classes; otherwise are treated as MBeans only classes that implement interfaces whose name if the fully qualified name of the MBean class + "MBean"
- mx4j.mbean.invoker, if set to the qualified name of an implementation of the `MBeanInvoker` interface, then an instance of the class will be used to invoke methods on standard MBeans. By default the generated-on-the-fly MBeanInvoker is used; to revert to the version that uses reflection, for example, use mx4j.mbean.invoker = `mx4j.server.CachingReflectionMBeanInvoker`

Version:
  $Revision: 1.34 $

Constructor Summary
`MBeanIntrospector()`

Method Summary
`void` `introspect(MBeanMetaData metadata)` Introspect the given mbean, storing the results in the given metadata.
`boolean` `isMBeanCompliant(MBeanMetaData metadata)` Returns whether the given already introspected metadata is compliant.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### MBeanIntrospector

    public MBeanIntrospector()

Method Detail

### introspect

    public void introspect(MBeanMetaData metadata)

  Introspect the given mbean, storing the results in the given metadata. It expects that the mbean field and the classloader field are not null

  See Also:
    `isMBeanCompliant(mx4j.server.MBeanMetaData)`

### isMBeanCompliant

    public boolean isMBeanCompliant(MBeanMetaData metadata)

  Returns whether the given already introspected metadata is compliant. Must be called after `introspect(mx4j.server.MBeanMetaData)`

Copyright © 2001-2005 The MX4J Contributors. All Rights Reserved.