Package com.tangosol.net.management
Class AnnotatedStandardMBean
java.lang.Object
javax.management.StandardMBean
com.tangosol.net.management.AnnotatedStandardMBean
- All Implemented Interfaces:
DynamicMBean
,MBeanRegistration
AnnotatedStandardMBean is an extension of a
StandardMBean
that uses
the Description
annotation for describing the attributes, operations
and the bean on the designated MBean interface.
This class is an extended version of the implementation from Eamon McManus's java.net article "Adding information to a Standard MBean interface using annotations."
- Since:
- Coherence 3.7
- Author:
- cf 2010.12.10
-
Constructor Summary
ConstructorDescriptionAnnotatedStandardMBean
(T impl, Class<T> clzIface) Make a DynamicMBean out of the MBean implementation, using the specified mbeanInterface class.AnnotatedStandardMBean
(T impl, Class<T> clzIface, boolean isMXBean) Make a DynamicMBean out of the MBean implementation, using the specified mbeanInterface class. -
Method Summary
Modifier and TypeMethodDescriptionprotected String
Retrieve a description for a particular attribute by finding aDescription
annotation on the getter method for the attribute.protected String
getDescription
(MBeanInfo info) Retrieve the description for the MBean from the MBean interface annotation.protected String
Retrieve a description for the particularMBeanOperationInfo
by finding aDescription
annotation on the corresponding operation.protected String
getParameterName
(MBeanOperationInfo op, MBeanParameterInfo param, int iParam) Retrieve the parameter name for the specified parameter by finding aDescription
annotation on the operation.Methods inherited from class javax.management.StandardMBean
cacheMBeanInfo, getAttribute, getAttributes, getCachedMBeanInfo, getClassName, getConstructors, getDescription, getDescription, getDescription, getDescription, getImpact, getImplementation, getImplementationClass, getMBeanInfo, getMBeanInterface, getParameterName, invoke, postDeregister, postRegister, preDeregister, preRegister, setAttribute, setAttributes, setImplementation
-
Constructor Details
-
AnnotatedStandardMBean
Make a DynamicMBean out of the MBean implementation, using the specified mbeanInterface class.- Type Parameters:
T
- the type of the MBean implementation- Parameters:
impl
- the implementation of the MBeanclzIface
- the Management Interface implemented by the MBean's implementation. If null, then this object will use standard JMX design pattern to determine the management interface associated with the given implementation- Throws:
NotCompliantMBeanException
- if the mbeanInterface does not follow JMX design patterns for Management Interfaces, or if the provided implementation does not implement the specified interface
-
AnnotatedStandardMBean
public AnnotatedStandardMBean(T impl, Class<T> clzIface, boolean isMXBean) throws NotCompliantMBeanException Make a DynamicMBean out of the MBean implementation, using the specified mbeanInterface class.- Type Parameters:
T
- the type of the MBean implementation- Parameters:
impl
- the implementation of the MBeanclzIface
- the Management Interface implemented by the MBean's implementation. If null, then this object will use standard JMX design pattern to determine the management interface associated with the given implementationisMXBean
- flag indicating whether clzIface represents an MXBean- Throws:
NotCompliantMBeanException
- if the mbeanInterface does not follow JMX design patterns for Management Interfaces, or if the provided implementation does not implement the specified interface
-
-
Method Details
-
getDescription
Retrieve the description for the MBean from the MBean interface annotation.- Overrides:
getDescription
in classStandardMBean
- Parameters:
info
- theMBeanInfo
for the MBean- Returns:
- the MBean description
-
getDescription
Retrieve a description for the particularMBeanOperationInfo
by finding aDescription
annotation on the corresponding operation.- Overrides:
getDescription
in classStandardMBean
- Parameters:
info
- theMBeanOperationInfo
- Returns:
- the description for an operation
-
getDescription
Retrieve a description for a particular attribute by finding aDescription
annotation on the getter method for the attribute. If a description is not found on the getter method, the setter will be checked.- Overrides:
getDescription
in classStandardMBean
- Parameters:
info
- theMBeanAttributeInfo
for the attribute- Returns:
- the description for an attribute
-
getParameterName
Retrieve the parameter name for the specified parameter by finding aDescription
annotation on the operation.- Overrides:
getParameterName
in classStandardMBean
- Parameters:
op
- theMBeanOperationInfo
for the opparam
- theMBeanParameterInfo
for the parameteriParam
- zero-based sequence number of the parameter- Returns:
- the name to use for the given MBeanParameterInfo.
-