javax.management.modelmbean
Interface ModelMBeanInfo

All Known Implementing Classes:

ModelMBeanInfoSupport

public interface ModelMBeanInfo

This interface is the implemented by the ModelMBeanInfo for every ModelMBean. An implementation of this interface must be shipped with every JMX Agent.

Java resources wishing to be manageable instatiate the ModelMBean using the MBeanServer's createMBean method. The resource then sets the ModelMBeanInfo and Descriptors for the ModelMBean instance. The attributes, operations, and notifications exposed via the ModelMBeanInfo for the ModelMBean comprise the management interface and are accessible from Mbeans, connectors/adapters like other MBeans. Through the Descriptors, values and methods in the managed application can be defined and mapped to attributes and operations of the ModelMBean. This mapping can be defined during development in a file or dynamically and programmatically at runtime.

Every ModelMBean which is instantiated in the MBeanServer becomes manageable: its attributes, operations, and notifications become remotely accessible through the connectors/adaptors connected to that MBeanServer. A Java object cannot be registered in the MBeanServer unless it is a JMX compliant MBean. By instantiating a ModelMBean, resources are guaranteed that the MBean is valid. MBeanException and RuntimeOperatiosException must be thrown on every public method. This allows for wrappering exceptions from distributed communications (RMI, EJB, etc.)

Version:

1.3

Author:

Max Parlione

 

Method Summary

 java.lang.Object clone()
    Overrides: clone in class java.lang.Object (We can't find a way to write 'Overrides' to generate a javadoc)
 ModelMBeanAttributeInfo getAttribute(java.lang.String inName)
    returns a ModelMBeanAttributeInfo requested by name.
 MBeanAttributeInfo[] getAttributes()
     
 java.lang.String getClassName()
     
 MBeanConstructorInfo[] getConstructors()
     
 java.lang.String getDescription()
     
 Descriptor getDescriptor(java.lang.String inDescriptorName, java.lang.String inDescriptorType)
    returns a Descriptor requested by name and descriptorType.
 Descriptor[] getDescriptors(java.lang.String inDescriptorType)
    returns a Descriptor array consisting of all Descriptors for the ModelMBeanInfo including the MBean Descriptor, attribute Descriptors, operation Descriptors, constructor Descriptors, and notification Descriptors.
 Descriptor getMBeanDescriptor()
    returns a MBean's descriptor.
 ModelMBeanNotificationInfo getNotification(java.lang.String inName)
    returns a ModelMBeanNotificationInfo requested by name.
 MBeanNotificationInfo[] getNotifications()
     
 ModelMBeanOperationInfo getOperation(java.lang.String inName)
    returns a ModelMBeanOperationInfo requested by name.
 MBeanOperationInfo[] getOperations()
     
 void setDescriptor(Descriptor inDescriptor, java.lang.String inDescriptorType)
    adds or replaces descriptors in all the info arrays for the ModelMBean.
 void setDescriptors(Descriptor[] inDescriptors)
    adds or replaces descriptors in the ModelMBeanInfo.
 void setMBeanDescriptor(Descriptor inDescriptor)
    sets the ModelMBean's descriptor (fully replace).
 

 

Method Detail

getDescriptors

public Descriptor[] getDescriptors(java.lang.String inDescriptorType)
                            throws MBeanException,
                                   RuntimeOperationsException

returns a Descriptor array consisting of all Descriptors for the ModelMBeanInfo including the MBean Descriptor, attribute Descriptors, operation Descriptors, constructor Descriptors, and notification Descriptors.

 

Parameters:

inDescriptorType - value of descriptorType field that must be set for the descriptor to be returned. Must be "mbean", "attribute", "operation", "constructor", or "notification". If it is null then all types will be returned.

 

Returns:

Descriptor array containing all descriptors for the ModelMBean

 

Throws:

MBeanException - Wraps another exception

RuntimeOperationsException - Wraps another exception

setDescriptors

public void setDescriptors(Descriptor[] inDescriptors)
                    throws MBeanException,
                           RuntimeOperationsException

adds or replaces descriptors in the ModelMBeanInfo.

 

Parameters:

inDescriptors - The descriptors to be set in the ModelMBeanInfo. Null elements of the list will be ignored. All descriptors must have name and descriptorType fields.

 

Returns:

void

 

Throws:

RuntimeOperationsException - Wraps exceptions for illegal or null arguments

getDescriptor

public Descriptor getDescriptor(java.lang.String inDescriptorName,
                                java.lang.String inDescriptorType)
                         throws MBeanException,
                                RuntimeOperationsException

returns a Descriptor requested by name and descriptorType.

 

Parameters:

String - descriptorName The name of the descriptor.

 

Returns:

Descriptor containing the descriptor for the ModelMBean with the same name and descriptorType. If a descriptor is not found, null is returned.

 

Throws:

MBeanException - Wraps another exception

RuntimeOperationsException - Wraps exceptions for invalid input name or type.

setDescriptor

public void setDescriptor(Descriptor inDescriptor,
                          java.lang.String inDescriptorType)
                   throws MBeanException,
                          RuntimeOperationsException

adds or replaces descriptors in all the info arrays for the ModelMBean.

 

Parameters:

Descriptor - The descriptor to be set in the ModelMBean. It must NOT be null. All descriptors must have name and descriptorType fields.

String - descriptorType The type of the descriptor being set. If this is null then the descriptorType field in the descriptor is used.If specified this value must be set in the descriptorType field for the descriptor to be returned. Must be "mbean","attribute", "operation", "constructor", or "notification".

 

Returns:

void

 

Throws:

RuntimeOperationsException - Wraps exceptions for illegal or null arguments

getMBeanDescriptor

public Descriptor getMBeanDescriptor()
                              throws MBeanException,
                                     RuntimeOperationsException

returns a MBean's descriptor. This descriptor contains metadata about the MBean and default policies for persistence and caching for the entire MBean. Policies may be overridden by descriptors associated with attribute, constructors, or operations with the same fieldNames.

 

Throws:

MBeanException - - Wraps another exception

RuntimeOperationsException - - Wraps another exception

setMBeanDescriptor

public void setMBeanDescriptor(Descriptor inDescriptor)
                        throws MBeanException,
                               RuntimeOperationsException

sets the ModelMBean's descriptor (fully replace). This descriptor contains metadata about the MBean and default policies for persistence and caching for the entire MBean. Policies may be overridden by descriptors associated with attribute, constructors, or operations with the same fieldNames. This operation does a complete replacement of the descriptor, no merging is done. The default MBeanDescriptor is

 

Throws:

MBeanException - Wraps another exception

RuntimeOperationsException - Wraps another exception

getAttribute

public ModelMBeanAttributeInfo getAttribute(java.lang.String inName)
                                     throws MBeanException,
                                            RuntimeOperationsException

returns a ModelMBeanAttributeInfo requested by name.

 

Parameters:

String - inName The name of the ModelMBeanAttributeInfo to get.

 

Throws:

MBeanException - Wraps another exception

RuntimeOperationsException - - Wraps another exception for invalid attribute name or ModelMBeanAttributeInfo to be returned.

getOperation

public ModelMBeanOperationInfo getOperation(java.lang.String inName)
                                     throws MBeanException,
                                            RuntimeOperationsException

returns a ModelMBeanOperationInfo requested by name.

 

Parameters:

String - inName The name of the ModelMBeanOperationInfo to get.

 

Throws:

MBeanException - Wraps another exception

RuntimeOperationsException - Wraps another exception for invalid attribute name or ModelMBeanAttributeInfo to be returned.

getNotification

public ModelMBeanNotificationInfo getNotification(java.lang.String inName)
                                           throws MBeanException,
                                                  RuntimeOperationsException

returns a ModelMBeanNotificationInfo requested by name.

 

Parameters:

String - inName The name of the ModelMBeanNotificationInfo to get.

 

Throws:

MBeanException - Wraps another exception

RuntimeOperationsException - Wraps another exception

clone

public java.lang.Object clone()

Overrides: clone in class java.lang.Object (We can't find a way to write 'Overrides' to generate a javadoc)

Overrides:

clone in class java.lang.Object

getAttributes

public MBeanAttributeInfo[] getAttributes()


getClassName

public java.lang.String getClassName()


getConstructors

public MBeanConstructorInfo[] getConstructors()


getDescription

public java.lang.String getDescription()


getNotifications

public MBeanNotificationInfo[] getNotifications()


getOperations

public MBeanOperationInfo[] getOperations()