APIdia Launch Partner
Top Description Fields Constructors Methods
com.sun.jmx.mbeanserver

pack-priv Class MXBeanIntrospector

extends MBeanIntrospector<ConvertingMethod>
Class Inheritance
Imports
java.lang.annotation.Annotation, java.lang.reflect.GenericArrayType, .InvocationTargetException, .Method, .ParameterizedType, .Type, javax.management.Descriptor, .ImmutableDescriptor, .MBeanAttributeInfo, .MBeanException, .MBeanOperationInfo, .MBeanParameterInfo, .NotCompliantMBeanException, javax.management.openmbean.OpenMBeanAttributeInfoSupport, .OpenMBeanOperationInfoSupport, .OpenMBeanParameterInfo, .OpenMBeanParameterInfoSupport, .OpenType

Introspector for MXBeans. There is exactly one instance of this class.
Since
1.6

Field Summary

Modifier and TypeField and Description
private static final MXBeanIntrospector
private static final MBeanIntrospector.MBeanInfoMap
private final MBeanIntrospector.PerInterfaceMap<ConvertingMethod>

Constructor Summary

AccessConstructor and Description
pack-priv

Method Summary

Modifier and TypeMethod and Description
private static boolean
canUseOpenInfo(Type type)

True if this type can be faithfully represented in an OpenMBean*Info.

pack-priv void
checkMethod(ConvertingMethod m)

Implements abstract com.sun.jmx.mbeanserver.MBeanIntrospector.checkMethod.

Check that this method is valid.

pack-priv MBeanAnalyzer<ConvertingMethod>
getAnalyzer(Class<?> mbeanInterface)

Implements abstract com.sun.jmx.mbeanserver.MBeanIntrospector.getAnalyzer.

Make an interface analyzer for this type of MBean.

pack-priv Descriptor
getBasicMBeanDescriptor()

Implements abstract com.sun.jmx.mbeanserver.MBeanIntrospector.getBasicMBeanDescriptor.

Get a Descriptor containing fields that MBeans of this kind will always have.

pack-priv Type[]
getGenericParameterTypes(ConvertingMethod m)

Implements abstract com.sun.jmx.mbeanserver.MBeanIntrospector.getGenericParameterTypes.

Get the parameter types of this method in the Java interface it came from.

pack-priv Type
pack-priv static MXBeanIntrospector
pack-priv MBeanAttributeInfo
getMBeanAttributeInfo(String attributeName, ConvertingMethod getter, ConvertingMethod setter)

Implements abstract com.sun.jmx.mbeanserver.MBeanIntrospector.getMBeanAttributeInfo.

Construct an MBeanAttributeInfo for the given attribute based on the given getter and setter.

pack-priv Descriptor
getMBeanDescriptor(Class<?> resourceClass)

Implements abstract com.sun.jmx.mbeanserver.MBeanIntrospector.getMBeanDescriptor.

Get a Descriptor containing additional fields beyond the ones from getBasicMBeanDescriptor that MBeans whose concrete class is resourceClass will always have.

pack-priv MBeanIntrospector.MBeanInfoMap
getMBeanInfoMap()

Implements abstract com.sun.jmx.mbeanserver.MBeanIntrospector.getMBeanInfoMap.

The map from concrete implementation class and interface to MBeanInfo for this type of MBean.

pack-priv MBeanOperationInfo
getMBeanOperationInfo(String operationName, ConvertingMethod operation)

Implements abstract com.sun.jmx.mbeanserver.MBeanIntrospector.getMBeanOperationInfo.

Construct an MBeanOperationInfo for the given operation based on the M it was derived from.

pack-priv String
getName(ConvertingMethod m)

Implements abstract com.sun.jmx.mbeanserver.MBeanIntrospector.getName.

Get the name of this method.

pack-priv MBeanIntrospector.PerInterfaceMap<ConvertingMethod>
getPerInterfaceMap()

Implements abstract com.sun.jmx.mbeanserver.MBeanIntrospector.getPerInterfaceMap.

The map from interface to PerInterface for this type of MBean.

pack-priv String[]
getSignature(ConvertingMethod m)

Implements abstract com.sun.jmx.mbeanserver.MBeanIntrospector.getSignature.

Get the signature of this method as a caller would have to supply it in MBeanServer.invoke.

pack-priv Object
invokeM2(ConvertingMethod m, Object target, Object[] args, Object cookie)

Implements abstract com.sun.jmx.mbeanserver.MBeanIntrospector.invokeM2.

Invoke the method with the given target and arguments.

pack-priv boolean
isMXBean()

Implements abstract com.sun.jmx.mbeanserver.MBeanIntrospector.isMXBean.

True if MBeans with this kind of introspector are MXBeans.

pack-priv ConvertingMethod
mFrom(Method m)

Implements abstract com.sun.jmx.mbeanserver.MBeanIntrospector.mFrom.

Find the M corresponding to the given Method.

private static String
private static Descriptor
typeDescriptor(OpenType<?> openType, Type originalType)

pack-priv static String
typeName(Type type)

pack-priv boolean
validParameter(ConvertingMethod m, Object value, int paramNo, Object cookie)

Implements abstract com.sun.jmx.mbeanserver.MBeanIntrospector.validParameter.

Test whether the given value is valid for the given parameter of this M.

Inherited from com.sun.jmx.mbeanserver.MBeanIntrospector:
consistentfindNotificationsgetClassMBeanInfogetMBeanInfogetMethodsgetPerInterfaceinvokeMinvokeSetterisValidParameter

Field Detail

instanceback to summary
private static final MXBeanIntrospector instance
mbeanInfoMapback to summary
private static final MBeanIntrospector.MBeanInfoMap mbeanInfoMap
perInterfaceMapback to summary
private final MBeanIntrospector.PerInterfaceMap<ConvertingMethod> perInterfaceMap

Constructor Detail

MXBeanIntrospectorback to summary
pack-priv MXBeanIntrospector()

Method Detail

canUseOpenInfoback to summary
private static boolean canUseOpenInfo(Type type)

True if this type can be faithfully represented in an OpenMBean*Info.

Compatibility with JSR 174 means that primitive types must be represented by an MBean*Info whose getType() is the primitive type string, e.g. "int". If we used an OpenMBean*Info then this string would be the wrapped type, e.g. "java.lang.Integer".

Compatibility with JMX 1.2 (including J2SE 5.0) means that arrays of primitive types cannot use an ArrayType representing an array of primitives, because that didn't exist in JMX 1.2.

checkMethodback to summary
pack-priv void checkMethod(ConvertingMethod m)

Implements abstract com.sun.jmx.mbeanserver.MBeanIntrospector.checkMethod.

Doc from com.sun.jmx.mbeanserver.MBeanIntrospector.checkMethod.

Check that this method is valid. For example, a method in an MXBean interface is not valid if one of its parameters cannot be mapped to an Open Type.

Annotations
@Override
getAnalyzerback to summary
pack-priv MBeanAnalyzer<ConvertingMethod> getAnalyzer(Class<?> mbeanInterface) throws NotCompliantMBeanException

Implements abstract com.sun.jmx.mbeanserver.MBeanIntrospector.getAnalyzer.

Doc from com.sun.jmx.mbeanserver.MBeanIntrospector.getAnalyzer.

Make an interface analyzer for this type of MBean.

Annotations
@Override
getBasicMBeanDescriptorback to summary
pack-priv Descriptor getBasicMBeanDescriptor()

Implements abstract com.sun.jmx.mbeanserver.MBeanIntrospector.getBasicMBeanDescriptor.

Doc from com.sun.jmx.mbeanserver.MBeanIntrospector.getBasicMBeanDescriptor.

Get a Descriptor containing fields that MBeans of this kind will always have. For example, MXBeans will always have "mxbean=true".

Annotations
@Override
getGenericParameterTypesback to summary
pack-priv Type[] getGenericParameterTypes(ConvertingMethod m)

Implements abstract com.sun.jmx.mbeanserver.MBeanIntrospector.getGenericParameterTypes.

Doc from com.sun.jmx.mbeanserver.MBeanIntrospector.getGenericParameterTypes.

Get the parameter types of this method in the Java interface it came from.

Annotations
@Override
getGenericReturnTypeback to summary
pack-priv Type getGenericReturnType(ConvertingMethod m)

Implements abstract com.sun.jmx.mbeanserver.MBeanIntrospector.getGenericReturnType.

Doc from com.sun.jmx.mbeanserver.MBeanIntrospector.getGenericReturnType.

Get the return type of this method. This is the return type of a method in a Java interface, so for MXBeans it is the declared Java type, not the mapped Open Type.

Annotations
@Override
getInstanceback to summary
pack-priv static MXBeanIntrospector getInstance()
getMBeanAttributeInfoback to summary
pack-priv MBeanAttributeInfo getMBeanAttributeInfo(String attributeName, ConvertingMethod getter, ConvertingMethod setter)

Implements abstract com.sun.jmx.mbeanserver.MBeanIntrospector.getMBeanAttributeInfo.

Doc from com.sun.jmx.mbeanserver.MBeanIntrospector.getMBeanAttributeInfo.

Construct an MBeanAttributeInfo for the given attribute based on the given getter and setter. One but not both of the getter and setter may be null.

Annotations
@Override
getMBeanDescriptorback to summary
pack-priv Descriptor getMBeanDescriptor(Class<?> resourceClass)

Implements abstract com.sun.jmx.mbeanserver.MBeanIntrospector.getMBeanDescriptor.

Doc from com.sun.jmx.mbeanserver.MBeanIntrospector.getMBeanDescriptor.

Get a Descriptor containing additional fields beyond the ones from getBasicMBeanDescriptor that MBeans whose concrete class is resourceClass will always have.

Annotations
@Override
getMBeanInfoMapback to summary
pack-priv MBeanIntrospector.MBeanInfoMap getMBeanInfoMap()

Implements abstract com.sun.jmx.mbeanserver.MBeanIntrospector.getMBeanInfoMap.

Doc from com.sun.jmx.mbeanserver.MBeanIntrospector.getMBeanInfoMap.

The map from concrete implementation class and interface to MBeanInfo for this type of MBean.

Annotations
@Override
getMBeanOperationInfoback to summary
pack-priv MBeanOperationInfo getMBeanOperationInfo(String operationName, ConvertingMethod operation)

Implements abstract com.sun.jmx.mbeanserver.MBeanIntrospector.getMBeanOperationInfo.

Doc from com.sun.jmx.mbeanserver.MBeanIntrospector.getMBeanOperationInfo.

Construct an MBeanOperationInfo for the given operation based on the M it was derived from.

Annotations
@Override
getNameback to summary
pack-priv String getName(ConvertingMethod m)

Implements abstract com.sun.jmx.mbeanserver.MBeanIntrospector.getName.

Doc from com.sun.jmx.mbeanserver.MBeanIntrospector.getName.

Get the name of this method.

Annotations
@Override
getPerInterfaceMapback to summary
pack-priv MBeanIntrospector.PerInterfaceMap<ConvertingMethod> getPerInterfaceMap()

Implements abstract com.sun.jmx.mbeanserver.MBeanIntrospector.getPerInterfaceMap.

Doc from com.sun.jmx.mbeanserver.MBeanIntrospector.getPerInterfaceMap.

The map from interface to PerInterface for this type of MBean.

Annotations
@Override
getSignatureback to summary
pack-priv String[] getSignature(ConvertingMethod m)

Implements abstract com.sun.jmx.mbeanserver.MBeanIntrospector.getSignature.

Doc from com.sun.jmx.mbeanserver.MBeanIntrospector.getSignature.

Get the signature of this method as a caller would have to supply it in MBeanServer.invoke. For MXBeans, the named types will be the mapped Open Types for the parameters.

Annotations
@Override
invokeM2back to summary
pack-priv Object invokeM2(ConvertingMethod m, Object target, Object[] args, Object cookie) throws InvocationTargetException, IllegalAccessException, MBeanException

Implements abstract com.sun.jmx.mbeanserver.MBeanIntrospector.invokeM2.

Doc from com.sun.jmx.mbeanserver.MBeanIntrospector.invokeM2.

Invoke the method with the given target and arguments.

Annotations
@Override
isMXBeanback to summary
pack-priv boolean isMXBean()

Implements abstract com.sun.jmx.mbeanserver.MBeanIntrospector.isMXBean.

Doc from com.sun.jmx.mbeanserver.MBeanIntrospector.isMXBean.

True if MBeans with this kind of introspector are MXBeans.

Annotations
@Override
mFromback to summary
pack-priv ConvertingMethod mFrom(Method m)

Implements abstract com.sun.jmx.mbeanserver.MBeanIntrospector.mFrom.

Doc from com.sun.jmx.mbeanserver.MBeanIntrospector.mFrom.

Find the M corresponding to the given Method.

Annotations
@Override
originalTypeStringback to summary
private static String originalTypeString(Type type)
typeDescriptorback to summary
private static Descriptor typeDescriptor(OpenType<?> openType, Type originalType)
typeNameback to summary
pack-priv static String typeName(Type type)
validParameterback to summary
pack-priv boolean validParameter(ConvertingMethod m, Object value, int paramNo, Object cookie)

Implements abstract com.sun.jmx.mbeanserver.MBeanIntrospector.validParameter.

Doc from com.sun.jmx.mbeanserver.MBeanIntrospector.validParameter.

Test whether the given value is valid for the given parameter of this M.

Annotations
@Override