| java.lang.Object javax.management.modelmbean.RequiredModelMBean
RequiredModelMBean | public class RequiredModelMBean implements ModelMBean(Code) | | This class is the implementation of a ModelMBean. An appropriate
implementation of a ModelMBean must be shipped with every JMX Agent and
the class must be named RequiredModelMBean.
Java resources wishing to be manageable instatiate the RequiredModelMBean
using the MBeanServer's createMBean method. The resource then sets the
MBeanInfo and Descriptors for the RequiredModelMBean instance. The
attributes and operations exposed via the ModelMBeanInfo for the ModelMBean
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 in an XML formatted file or dynamically and
programmatically at runtime.
Every RequiredModelMBean which is instantiated in the MBeanServer becomes
manageable: its attributes and operations 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 RequiredModelMBean, 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.)
|
Inner Class :class UpdateTimer implements Runnable | |
Constructor Summary | |
public | RequiredModelMBean() Constructs an RequiredModelMBean with an empty ModelMBeanInfo. | public | RequiredModelMBean(ModelMBeanInfo mbi) Constructs a RequiredModelMBean object using ModelMBeanInfo passed in.
The RequiredModelMBean must be instantiated, but not registered with the
MBeanServer. |
Method Summary | |
public void | addAttributeChangeNotificationListener(NotificationListener inlistener, String inAttributeName, Object inhandback) Register3s an object which implements the NotificationListener interface
as a listener for AttributeChangeNotifications. | public void | addNotificationListener(NotificationListener listener, NotificationFilter filter, Object handback) Enables a couple (listener,handback) for a registered MBean to be added.
Specified by :
addNotificationListener in interface NotificationBroadcaster
Parameters: listener - The listener object which will handles notificationsemitted by the registered MBean. Parameters: filter - The filter object. | public Object | getAttribute(String attribute) Gets the value of a specific attribute of this MBean.
Parameters: attribute - A String specifying the name of the attribute to be retrieved. | Object | getAttribute(String attribute, boolean isFromServer) Gets the value of a specific attribute of this MBean.
Parameters: attribute - A String specifying the name of the attribute to be retrieved. | public AttributeList | getAttributes(String[] attributes) Enables the values of several attributes of this MBean.
Parameters: attributes - A list of attributes to be retrieved. | public MBeanInfo | getMBeanInfo() This method discovers the attributes and operations this MBean
exposes for management. | public MBeanNotificationInfo[] | getNotificationInfo() Returns a NotificationInfo object containing the name of the Java class
of the notification and the notification types sent. | public Object | invoke(String actionName, Object[] params, String[] signature) Invokes an action on this MBean.
Parameters: actionName - The name of the action to be invoked. Parameters: params - An array containing the parameters to be set whenthe action is invoked Parameters: signature - An array containing the signature of the action.The class objects will be loaded using the sameclass loader as the one used for loading the MBean onwhich the action was invoked. | public void | load() Locates the MBean in a persistent store and primes this instance of the
MBean with the stored values.Any currently set values are overwritten. | public void | removeAttributeChangeNotificationListener(NotificationListener inlistener, String inAttributeName) Removes a listener for attributeChangeNotifications from the MBean.
Parameters: inlistener - The listener name which was handling notificationsemitted by the registered MBean. | public void | removeNotificationListener(NotificationListener listener) Enables a listener for an MBean to be removed. | public void | sendAttributeChangeNotification(AttributeChangeNotification ntfyObj) Sends an attributeChangeNotification which is passed in to the registered
attributeChangeNotification listeners on the ModelMBean. | public void | sendAttributeChangeNotification(Attribute inOldVal, Attribute inNewVal) Sends an attributeChangeNotification which contains the old value and
new value for the attribute to the registered
AttributeChangeNotification listeners on the ModelMBean. | public void | sendNotification(Notification ntfyObj) Sends a Notification which is passed in to the registered Notification
listeners on the ModelMBean as a jmx.modelmbean.general notification. | public void | sendNotification(String ntfyText) Sends a Notification which contains the text string that is passed in
to the registered Notification listeners on the ModelMBean. | public void | setAttribute(Attribute attribute) Sets the value of a specific attribute of this MBean. | public AttributeList | setAttributes(AttributeList attributes) Sets the values of several attributes of this MBean.
Parameters: attributes - A list of attributes: The identification of theattributes to be set and the values they are to be set to. | public void | setManagedResource(Object mr, String mr_type) Sets the instance handle of the object against which to execute all
methods in this RequiredModelMBean management interface (ModelMBeanInfo
and Descriptors). | public void | setModelMBeanInfo(ModelMBeanInfo mbi) Initializes a RequiredModelMBean object using ModelMBeanInfo passed in.
The RequiredModelMBean should be instantiated, but not registered with
the MBeanServer. | public void | store() Writes the MBean in a persistent store.Should only be called by
the RequiredModelMBean class to store itself according to
persistence policy for the MBean.When used,it may be called with every
setAttribute or on a periodic basis. |
clazz | Class clazz(Code) | | The Class object of the instrumentation *
|
confDirName | String confDirName(Code) | | The directory specifying where the conf file resides *
|
confFileName | String confFileName(Code) | | The configuration file name which has the list of persistent
information of mbeans.
|
confFileTable | Hashtable confFileTable(Code) | | The table that hols the persistent mbeans info as specified in
the conf file
|
object | Object object(Code) | | The actual instrumentaton object. *
|
objectType | String objectType(Code) | | The actual instrumentaton object type. *
|
RequiredModelMBean | public RequiredModelMBean() throws MBeanException, RuntimeOperationsException(Code) | | Constructs an RequiredModelMBean with an empty ModelMBeanInfo. After the
RequiredModelMBean's MBeanInfo and Descriptors are customized, the
RequiredModelMBean should be registered with the MBeanServer.
exception: MBeanException - The constructor of the object has thrown an exception. exception: RuntimeOperationsException - Wraps an IllegalArgumentException |
RequiredModelMBean | public RequiredModelMBean(ModelMBeanInfo mbi) throws MBeanException, RuntimeOperationsException(Code) | | Constructs a RequiredModelMBean object using ModelMBeanInfo passed in.
The RequiredModelMBean must be instantiated, but not registered with the
MBeanServer. After the RequiredModelMBean's MBeanInfo and Descriptors
are customized, the RequiredModelMBean should be registered with the
MBeanServer.
Parameters: mbi - The ModelMBeanInfo object to be used by the RequiredModelMBean. exception: MBeanException - The constructor of the object has thrown an exception. exception: RuntimeOperationsException - Wraps an IllegalArgumentException :The MBeanInfo passed in parameter is null or invalid. |
addAttributeChangeNotificationListener | public void addAttributeChangeNotificationListener(NotificationListener inlistener, String inAttributeName, Object inhandback) throws MBeanException, RuntimeOperationsException, IllegalArgumentException(Code) | | Register3s an object which implements the NotificationListener interface
as a listener for AttributeChangeNotifications. This object's
'handleNotification()' method will be invoked when any
attributeChangeNotification is issued through or by the MBean. This
does not include other Notifications. They must be registered for
independently. An AttributeChangeNotification will be generated for this
attributeName.
Parameters: inlistener - The listener object which will handles notificationsemitted by the registered MBean. Parameters: inAttributeName - The name of the MBean attribute for which toreceive change notifications. If null, then all attributechanges will cause an attributeChangeNotification to be issued. Parameters: inhandback - The context to be sent to the listener with thenotification when a notification is emitted. throws: MBeanException - Wraps an exception thrown by this method throws: RuntimeOperationsException - To wrap the Run time Exceptions throws: IllegalArgumentException - Listener is null or attributeName is null. |
addNotificationListener | public void addNotificationListener(NotificationListener listener, NotificationFilter filter, Object handback) throws IllegalArgumentException(Code) | | Enables a couple (listener,handback) for a registered MBean to be added.
Specified by :
addNotificationListener in interface NotificationBroadcaster
Parameters: listener - The listener object which will handles notificationsemitted by the registered MBean. Parameters: filter - The filter object. If not specified, no filtering will beperformed before handling notifications. Parameters: handback - The context to be sent to the listener when anotification is emitted. throws: java.lang.IllegalArgumentException - Listener parameter is null. |
getAttributes | public AttributeList getAttributes(String[] attributes)(Code) | | Enables the values of several attributes of this MBean.
Parameters: attributes - A list of attributes to be retrieved. The value of the retrieved attributes as attributeList. |
getMBeanInfo | public MBeanInfo getMBeanInfo()(Code) | | This method discovers the attributes and operations this MBean
exposes for management.
An instance of MBeanInfo allowing to retrieve all attributesand operations of this MBean. |
getNotificationInfo | public MBeanNotificationInfo[] getNotificationInfo()(Code) | | Returns a NotificationInfo object containing the name of the Java class
of the notification and the notification types sent.
This getNotificationInfo method will inturn call the original
instrumentation object's getNotificationInfo method if the object is
an instanceof NotificationBroadcaster.
|
invoke | public Object invoke(String actionName, Object[] params, String[] signature) throws MBeanException, ReflectionException(Code) | | Invokes an action on this MBean.
Parameters: actionName - The name of the action to be invoked. Parameters: params - An array containing the parameters to be set whenthe action is invoked Parameters: signature - An array containing the signature of the action.The class objects will be loaded using the sameclass loader as the one used for loading the MBean onwhich the action was invoked. The object returned by the action, which represents the resultof invoking the action on the specified MBean. throws: MBeanException - Wraps an exception thrown by the MBean's invoked method. throws: ReflectionException - Wraps an java.lang.Exception thrown whiletrying to invoke the method. |
removeAttributeChangeNotificationListener | public void removeAttributeChangeNotificationListener(NotificationListener inlistener, String inAttributeName) throws MBeanException, RuntimeOperationsException, ListenerNotFoundException(Code) | | Removes a listener for attributeChangeNotifications from the MBean.
Parameters: inlistener - The listener name which was handling notificationsemitted by the registered MBean. This method will removeall information related to this listener. Parameters: inAttributeName - The attribute for which the listener no longerwants to receive attributeChangeNotifications. throws: MBeanException - Wraps an exception thrown whileremoving AttributeChangeNotificationListener throws: RuntimeOperationsException - Wraps the exceptions thrown in therun time exception: ListenerNotFoundException - The couple (listener,handback) isnot registered in the MBean. The exception message containseither "listener", "handback" or the object namedepending on which object cannot be found. |
removeNotificationListener | public void removeNotificationListener(NotificationListener listener) throws ListenerNotFoundException(Code) | | Enables a listener for an MBean to be removed. All couple
(listener, handback) are removed.
Specified by:
removeNotificationListener in interface NotificationBroadcaster
Parameters: listener - The listener object which will handles notificationsemitted by the registered MBean. throws: ListenerNotFoundException - The listener is not registered in the MBean. |
sendAttributeChangeNotification | public void sendAttributeChangeNotification(AttributeChangeNotification ntfyObj) throws MBeanException, RuntimeOperationsException(Code) | | Sends an attributeChangeNotification which is passed in to the registered
attributeChangeNotification listeners on the ModelMBean.
Parameters: ntfyObj - The notification which is to be passed to the'handleNotification' method of the listener object. exception: MBeanException - The initializer of the object has thrown an exception. exception: RuntimeOperationsException - Wraps an IllegalArgumentException:The Notification object passed in parameter is null or invalid. |
sendAttributeChangeNotification | public void sendAttributeChangeNotification(Attribute inOldVal, Attribute inNewVal) throws MBeanException, RuntimeOperationsException(Code) | | Sends an attributeChangeNotification which contains the old value and
new value for the attribute to the registered
AttributeChangeNotification listeners on the ModelMBean.
Parameters: inOldVal - The origional value for the Attribute Parameters: inNewVal - The current value for the AttributeThe constructed attributeChangeNotification will be:type "jmx.attribute.change"source this ModelMBean instancesequence 1attributeName oldValue.getName()attributeType oldValue's classattributeOldValue oldValue.getValue()attributeNewValue newValue.getValue() exception: MBeanException - to wrapper implementation exceptions exception: RuntimeOperationsException - to wrapper IllegalArgumentExceptions.
|
sendNotification | public void sendNotification(Notification ntfyObj) throws MBeanException, RuntimeOperationsException(Code) | | Sends a Notification which is passed in to the registered Notification
listeners on the ModelMBean as a jmx.modelmbean.general notification.
Parameters: ntfyObj - The notification which is to be passed to the'handleNotification' method of the listener object. exception: MBeanException - The initializer of the object has thrown an exception. exception: RuntimeOperationsException - Wraps an IllegalArgumentException:The Notification object passed in parameter is null or invalid. |
sendNotification | public void sendNotification(String ntfyText) throws MBeanException, RuntimeOperationsException(Code) | | Sends a Notification which contains the text string that is passed in
to the registered Notification listeners on the ModelMBean.
Parameters: ntfyText - The text which is to be passed in the Notification to the'handleNotification' method of the listener object.the constructed Notification will be:type "jmx.modelmbean.general"source this ModelMBean instancesequence 1 exception: MBeanException - The initializer of the object has thrown an exception. exception: RuntimeOperationsException - Wraps an IllegalArgumentException:The Notification text string passed in parameter is null or invalid. |
setAttributes | public AttributeList setAttributes(AttributeList attributes)(Code) | | Sets the values of several attributes of this MBean.
Parameters: attributes - A list of attributes: The identification of theattributes to be set and the values they are to be set to. The list of attributes that were set, with their new values. |
setManagedResource | public void setManagedResource(Object mr, String mr_type) throws MBeanException, RuntimeOperationsException, InstanceNotFoundException, InvalidTargetObjectTypeException(Code) | | Sets the instance handle of the object against which to execute all
methods in this RequiredModelMBean management interface (ModelMBeanInfo
and Descriptors). This setting can be overridden by setting the
'targetObject' field of the ModelMBeanOperationInfo's descriptor.
Parameters: mr - Object that is the managed resource Parameters: mr_type - The type of reference for the managed resource. Can be:ObjectReference, Handle, IOR, EJBHandle, RMIReference.If the MBeanServer cannot process the mr_type passed in,an exception will be thrown. Current Implementation ofRequiredModelMBean supports only ObjectReference. exception: MBeanException - The initializer of the object has thrown an exception. exception: RuntimeOperationsException - Wraps an IllegalArgumentException:The managed resource or managed resoure type passed inparameter is null or invalid. exception: InstanceNotFoundException - The managed resource objectcould not be found exception: InvalidTargetObjectType - The managed resource type cannotbe processed by the RequiredModelMBean or JMX Agent. |
setModelMBeanInfo | public void setModelMBeanInfo(ModelMBeanInfo mbi) throws MBeanException, RuntimeOperationsException(Code) | | Initializes a RequiredModelMBean object using ModelMBeanInfo passed in.
The RequiredModelMBean should be instantiated, but not registered with
the MBeanServer. After the RequiredModelMBean's MBeanInfo and
Descriptors are customized, the RequiredModelMBean should be registered
with the MBeanServer.
Parameters: mbi - The MBeanInfo object to be used by the RequiredModelMBean. exception: MBeanException - The constructor of the MBeanInfo has return nullor thrown an exception. exception: RuntimeOperationsException - Wraps an IllegalArgumentException:The MBeanInfo passed in parameter is null or invalid. |
|
|