com.adventnet.adaptors.clients.rmi
Class RMIClient

java.lang.Object
  extended by com.adventnet.adaptors.clients.AbstractClient
      extended by com.adventnet.adaptors.clients.rmi.RMIClient
All Implemented Interfaces:
AsyncClient, Client, javax.management.MBeanServer, javax.management.MBeanServerConnection

public class RMIClient
extends AbstractClient


Field Summary
(package private)  boolean connectMode
           
 java.lang.String mbeanServerID
           
 
Fields inherited from class com.adventnet.adaptors.clients.AbstractClient
adaptorInfo, clientProp, heartBeatRate, host, isSubAgentAlive, listeners, port
 
Constructor Summary
RMIClient()
           
 
Method Summary
 void addNotificationListener(javax.management.ObjectName name, javax.management.NotificationListener listener, javax.management.NotificationFilter filter, java.lang.Object handback)
          Enables a couple (listener,handback) for a registered MBean to be added using this client through the relevant adaptor.
 void addNotificationListener(javax.management.ObjectName name, javax.management.ObjectName listener, javax.management.NotificationFilter filter, java.lang.Object handback)
          Enables a couple (listener,handback) for a registered MBean to be added using this client through the relevant adaptor.
 void addNotificationListener(java.lang.String id, javax.management.NotificationListener listener, javax.management.NotificationFilter filter, java.lang.Object handback)
          Method to add the notification listner that is interested in receiving notifications from the RMIAdaptor.
 void authenticate(com.adventnet.agent.security.UserContext userContext)
          Authenticates the user corresponig to the UserContext passed
 void connect(java.lang.String host, int port, java.lang.Object adaptorInfo)
          Initializes the communication with the remote managed object server.
 javax.management.ObjectInstance createMBean(java.lang.String className, javax.management.ObjectName name)
          Instantiates and registers a MBean with the MBeanServer using this client through the relevant adaptor.
 javax.management.ObjectInstance createMBean(java.lang.String className, javax.management.ObjectName name, java.lang.Object[] params, java.lang.String[] signature)
          Instantiates and registers a MBean with the MBeanServer using this client through the relevant adaptor.The MBean server will use the DefaultLoaderRepository to load the class of the MBean.
 javax.management.ObjectInstance createMBean(java.lang.String className, javax.management.ObjectName name, javax.management.ObjectName loaderName)
          Instantiates and registers a MBean with the MBeanServer using this client through the relevant adaptor.
 javax.management.ObjectInstance createMBean(java.lang.String className, javax.management.ObjectName name, javax.management.ObjectName loaderName, java.lang.Object[] params, java.lang.String[] signature)
          Instantiates and registers a MBean with the MBeanServer using this client through the relevant adaptor.The class loader to be used is identified by its object name.
 java.io.ObjectInputStream deserialize(javax.management.ObjectName objectName, byte[] data)
          Deserializes the data passed
 java.io.ObjectInputStream deserialize(java.lang.String className, byte[] data)
           
 java.io.ObjectInputStream deserialize(java.lang.String className, javax.management.ObjectName objectName, byte[] data)
           
 void disconnect()
          Diconnects the communication with the adaptor.
 java.lang.Object getAttribute(javax.management.ObjectName name, java.lang.String attribute)
          Gets the value of a specific attribute of a named MBean using this client through the relevant adaptor.
 javax.management.AttributeList getAttributes(javax.management.ObjectName name, java.lang.String[] attributes)
          Enables the values of several attributes of a named MBean using this client through the relevant adaptor.
 java.lang.String getDefaultDomain()
          Returns the default domain used for naming the MBean.
 java.lang.Integer getMBeanCount()
          Returns the number of MBeans controlled by the MBeanServer using this client through the relevant adaptor.
 javax.management.MBeanInfo getMBeanInfo(javax.management.ObjectName name)
          This method discovers the attributes and operations that an MBean exposes for management using this client through the relevant adaptor.When flatten is false, inherited attributes are not returned.
 java.lang.String getMBeanServerID()
          Returns the MBeanServerID
 javax.management.ObjectInstance getObjectInstance(javax.management.ObjectName name)
          Gets the ObjectInstance for a given MBean registered with the MBean server using this client through the relevant adaptor.
 java.lang.Object instantiate(java.lang.String className)
          Instantiates an object using the list of all class loaders registered in the MBean server (Default Loader Repository using this client through the relevant adaptor.
 java.lang.Object instantiate(java.lang.String className, java.lang.Object[] params, java.lang.String[] signature)
          Instantiates an object using the list of all class loaders registered in the MBean server (Default Loader Repository) using this client through the relevant adaptor.The object's class should have a public constructor.
 java.lang.Object instantiate(java.lang.String className, javax.management.ObjectName loaderName)
          Instantiates an object using the class Loader specified by its ObjectName using this client through the relevant adaptor.
 java.lang.Object instantiate(java.lang.String className, javax.management.ObjectName loaderName, java.lang.Object[] params, java.lang.String[] signature)
          Instantiates an object using this client through the relevant adaptor.
 java.lang.Object invoke(javax.management.ObjectName name, java.lang.String actionName, java.lang.Object[] params, java.lang.String[] signature)
          Invokes an action on an MBean using this client through the relevant adaptor.
 boolean isAuthenticationEnabled()
          Determines whether authentication is enabled or not
 java.lang.Boolean isConnectedWithAdaptor()
          Indicates whether the RMI client is connected with the RMI adaptor.
 boolean isInstanceOf(javax.management.ObjectName name, java.lang.String className)
          Returns true if the MBean specified is an instance of the specified class, false otherwise.
 boolean isRegistered(javax.management.ObjectName name)
          Checks whether an MBean, identified by its object name, is already registered with the MBeanServer using this client through the relevant adaptor.
 java.util.Set queryMBeans(javax.management.ObjectName name, javax.management.QueryExp query)
          Gets MBeans controlled by the MBeanServer using this client through the relevant adaptor.
 java.util.Set queryNames(javax.management.ObjectName name, javax.management.QueryExp query)
          Gets the names of MBeans controlled by the MBeanServer using this client through the relevant adaptor.
 javax.management.ObjectInstance registerAsModelMBean(java.lang.Object mbean, java.lang.String xmlFile, javax.management.ObjectName name)
          Remote method call which registers the MBean.
 javax.management.ObjectInstance registerMBean(java.lang.Object object, javax.management.ObjectName objectName)
           
 javax.management.ObjectInstance registerMBean(java.lang.String className, javax.management.ObjectName name)
          Registers a pre-existing object as an MBean with the MBeanServer using this client through the relevant adaptor.
 void removeNotificationListener(javax.management.ObjectName name, javax.management.NotificationListener listener)
          Enables a listener for an MBean to be removed using this client through the relevant adaptor.
 void removeNotificationListener(javax.management.ObjectName name, javax.management.ObjectName listener)
          Enables a listener for an MBean to be removed using this client through the relevant adaptor.
 void removeNotificationListener(java.lang.String id, javax.management.NotificationListener listener, javax.management.NotificationFilter filter)
           
 void sendHeartBeatEvent()
          This synchronized method sends the HeartBeartEvent to all the registered listeners
 void setAttribute(javax.management.ObjectName name, javax.management.Attribute attribute)
          Sets the value of a specific attribute of a named MBean using this client through the relevant adaptor.
 javax.management.AttributeList setAttributes(javax.management.ObjectName name, javax.management.AttributeList attributes)
          Sets the values of several attributes of a named MBean using this client through the relevant adaptor.
 void setSSLSupportEnabled(boolean bool)
          Method to set whether SSL is enabled or not.
 void unregisterMBean(javax.management.ObjectName name)
          De-registers an MBean from the MBeanServer using this client through the relevant adaptor.
 
Methods inherited from class com.adventnet.adaptors.clients.AbstractClient
addHeartBeatListener, asyncGetAttribute, asyncGetAttributes, asyncInvoke, asyncSetAttributes, enableHeartBeat, getHeartBeatRate, isHeartBeatEnabled, removeHeartBeatListener, setHeartBeatRate, setProperty, startHeartBeat, stopHeartBeat
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface javax.management.MBeanServer
getClassLoader, getClassLoaderFor, getClassLoaderRepository, getDomains, removeNotificationListener, removeNotificationListener
 

Field Detail

connectMode

boolean connectMode

mbeanServerID

public java.lang.String mbeanServerID
Constructor Detail

RMIClient

public RMIClient()
Method Detail

setSSLSupportEnabled

public void setSSLSupportEnabled(boolean bool)
Method to set whether SSL is enabled or not. Should be called before calling the connect method

Parameters:
bool - whether connection has to be made over SSL or not

deserialize

public java.io.ObjectInputStream deserialize(javax.management.ObjectName objectName,
                                             byte[] data)
                                      throws javax.management.InstanceNotFoundException,
                                             javax.management.OperationsException
Deserializes the data passed

Parameters:
objectName - The objectName of the MBean
data - The data as byte array
Throws:
javax.management.InstanceNotFoundException - If the specified MBean is not registered with the MBeanServer
javax.management.OperationsException

deserialize

public java.io.ObjectInputStream deserialize(java.lang.String className,
                                             byte[] data)
                                      throws javax.management.OperationsException,
                                             javax.management.ReflectionException
Parameters:
className - The class name
data - The data as byte array
Throws:
javax.management.ReflectionException
javax.management.OperationsException

deserialize

public java.io.ObjectInputStream deserialize(java.lang.String className,
                                             javax.management.ObjectName objectName,
                                             byte[] data)
                                      throws javax.management.InstanceNotFoundException,
                                             javax.management.OperationsException,
                                             javax.management.ReflectionException
Parameters:
className - The class name
objectName - The object name of the mbean
data - The data as byte array
Throws:
javax.management.InstanceNotFoundException - If the specifed MBean is not registered with the MBeanServer
javax.management.OperationsException
javax.management.ReflectionException

connect

public void connect(java.lang.String host,
                    int port,
                    java.lang.Object adaptorInfo)
             throws java.net.ConnectException
Initializes the communication with the remote managed object server.

Specified by:
connect in interface Client
Specified by:
connect in class AbstractClient
Parameters:
host - The host name of the adaptor.
port - The port number of the adaptor.
adaptorInfo - The information object specific to the adaptor. Here the Factory object look up name String can be specfied. If null, then lookup is made for "AdventnetRMIAdaptor"
Throws:
java.net.ConnectException

authenticate

public void authenticate(com.adventnet.agent.security.UserContext userContext)
                  throws com.adventnet.agent.security.AuthenticationException
Authenticates the user corresponig to the UserContext passed

Specified by:
authenticate in interface Client
Overrides:
authenticate in class AbstractClient
Parameters:
userContext - The UserContext corresponding to the user
Throws:
com.adventnet.agent.security.AuthenticationException - if the user cannot be authenticated

isAuthenticationEnabled

public boolean isAuthenticationEnabled()
Determines whether authentication is enabled or not

Specified by:
isAuthenticationEnabled in interface Client
Overrides:
isAuthenticationEnabled in class AbstractClient
Returns:
boolean true if Authentication is enabled and false otherwise

disconnect

public void disconnect()
Diconnects the communication with the adaptor.

Specified by:
disconnect in interface Client
Specified by:
disconnect in class AbstractClient

isConnectedWithAdaptor

public java.lang.Boolean isConnectedWithAdaptor()
Indicates whether the RMI client is connected with the RMI adaptor.

Specified by:
isConnectedWithAdaptor in interface Client
Specified by:
isConnectedWithAdaptor in class AbstractClient
Returns:
True, If Corba Client is connected with the Adaptor else False.

sendHeartBeatEvent

public void sendHeartBeatEvent()
This synchronized method sends the HeartBeartEvent to all the registered listeners

Specified by:
sendHeartBeatEvent in class AbstractClient

getMBeanServerID

public java.lang.String getMBeanServerID()
Returns the MBeanServerID


addNotificationListener

public void addNotificationListener(javax.management.ObjectName name,
                                    javax.management.NotificationListener listener,
                                    javax.management.NotificationFilter filter,
                                    java.lang.Object handback)
                             throws javax.management.InstanceNotFoundException
Enables a couple (listener,handback) for a registered MBean to be added using this client through the relevant adaptor.

Parameters:
name - The name of the MBean on which the listener should be added.
listener - The listener object which will handles notifications emitted by the registered MBean.
filter - The filter object. If not specified, no filtering will be performed before handling notifications.
handback - The context to be sent to the listener when a notification is emitted.
Throws:
javax.management.InstanceNotFoundException - The MBean name doesn't correspond to a registered MBean.

addNotificationListener

public void addNotificationListener(javax.management.ObjectName name,
                                    javax.management.ObjectName listener,
                                    javax.management.NotificationFilter filter,
                                    java.lang.Object handback)
                             throws javax.management.InstanceNotFoundException
Enables a couple (listener,handback) for a registered MBean to be added using this client through the relevant adaptor.

Parameters:
name - The name of the MBean on which the listener should be added.
listener - The listener name which will handles notifications emitted by the registered MBean.
filter - The filter object. If not specified, no filtering will be performed before handling notifications.
handback - The context to be sent to the listener when a notification is emitted.
Throws:
javax.management.InstanceNotFoundException - The MBean name doesn't correspond to a registered MBean.

addNotificationListener

public void addNotificationListener(java.lang.String id,
                                    javax.management.NotificationListener listener,
                                    javax.management.NotificationFilter filter,
                                    java.lang.Object handback)
                             throws java.lang.Exception
Method to add the notification listner that is interested in receiving notifications from the RMIAdaptor. RMIAdaptor by default will listen for notifications from all the MBeans.

Parameters:
id - unique ID for the listener
listener - listener interested in receiving notifications from the RMI Adaptor
filter - filter criteria for sending the notifications
handback - the handback object
Throws:
java.lang.Exception

removeNotificationListener

public void removeNotificationListener(java.lang.String id,
                                       javax.management.NotificationListener listener,
                                       javax.management.NotificationFilter filter)
                                throws java.lang.Exception
Throws:
java.lang.Exception

createMBean

public javax.management.ObjectInstance createMBean(java.lang.String className,
                                                   javax.management.ObjectName name)
                                            throws javax.management.ReflectionException,
                                                   javax.management.InstanceAlreadyExistsException,
                                                   javax.management.MBeanRegistrationException,
                                                   javax.management.MBeanException,
                                                   javax.management.NotCompliantMBeanException
Instantiates and registers a MBean with the MBeanServer using this client through the relevant adaptor. The MBean server will use the DefaultLoaderRepository to load the class of the MBean. An object name is associated to the MBean. If the object name given is null, the MBean can automatically provide its own name by implementing the MBeanRegistration interface. The call returns a reference to the new instance and its object name.

Parameters:
className - The class name of the MBean to be instantiated.
name - The object name of the MBean. May be null.
Returns:
An ObjectInstance, containing the ObjectName and the Java class name of the newly instantiated MBean.
Throws:
javax.management.ReflectionException - Wraps Wraps a ClassNotFoundException or a java.lang.Exception that occured trying to invoke the MBean's constructor.
javax.management.InstanceAlreadyExistsException - The MBean is already under the control of the MBeanServer.
javax.management.MBeanRegistrationException - The preRegister (MBeanRegistration interface) method of the MBean has thrown an exception. The MBean will not be registered.
javax.management.MBeanException - The constructor of the MBean has thrown an exception
javax.management.NotCompliantMBeanException - This class is not an JMX compliant MBean
javax.management.RuntimeOperationsException - Wraps a java.lang.IllegalArgumentException: The className passed in parameter is null, the ObjectName passed in parameter contains a pattern or no ObjectName is specified for the MBean.

createMBean

public javax.management.ObjectInstance createMBean(java.lang.String className,
                                                   javax.management.ObjectName name,
                                                   java.lang.Object[] params,
                                                   java.lang.String[] signature)
                                            throws javax.management.ReflectionException,
                                                   javax.management.InstanceAlreadyExistsException,
                                                   javax.management.MBeanRegistrationException,
                                                   javax.management.MBeanException,
                                                   javax.management.NotCompliantMBeanException
Instantiates and registers a MBean with the MBeanServer using this client through the relevant adaptor.The MBean server will use the DefaultLoaderRepository to load the class of the MBean. An object name is associated to the MBean. If the object name given is null, the MBean can automatically provide its own name by implementing the MBeanRegistration interface. The call returns a reference to the new instance and its object name.

Parameters:
className - The class name of the MBean to be instantiated.
name - The object name of the MBean. May be null.
params - An array containing the parameters of the constructor to be invoked.
signature - An array containing the signature of the constructor to be invoked.
Returns:
An ObjectInstance, containing the ObjectName and the Java class name of the newly instantiated MBean.
Throws:
javax.management.ReflectionException - Wraps Wraps a ClassNotFoundException or a java.lang.Exception that occured trying to invoke the MBean's constructor.
javax.management.InstanceAlreadyExistsException - The MBean is already under the control of the MBeanServer.
javax.management.MBeanRegistrationException - The preRegister (MBeanRegistration interface) method of the MBean has thrown an exception. The MBean will not be registered.
javax.management.MBeanException - The constructor of the MBean has thrown an exception
javax.management.NotCompliantMBeanException - This class is not an JMX compliant MBean
javax.management.RuntimeOperationsException - Wraps a java.lang.IllegalArgumentException: The className passed in parameter is null, the ObjectName passed in parameter contains a pattern or no ObjectName is specified for the MBean.

createMBean

public javax.management.ObjectInstance createMBean(java.lang.String className,
                                                   javax.management.ObjectName name,
                                                   javax.management.ObjectName loaderName)
                                            throws javax.management.ReflectionException,
                                                   javax.management.InstanceAlreadyExistsException,
                                                   javax.management.MBeanRegistrationException,
                                                   javax.management.MBeanException,
                                                   javax.management.NotCompliantMBeanException,
                                                   javax.management.InstanceNotFoundException
Instantiates and registers a MBean with the MBeanServer using this client through the relevant adaptor. The class loader to be used is identified by its object name. An object name is associated to the MBean. If the object name of the loader is null, the system ClassLoader will be used.If the MBean's object name given is null, the MBean can automatically provide its own name by implementing the MBeanRegistration interface. The call returns a reference to the new instance and its object name.

Parameters:
className - The class name of the MBean to be instantiated.
name - The object name of the MBean. May be null.
loaderName - The object name of the class loader to be used.
Returns:
An ObjectInstance, containing the ObjectName and the Java class name of the newly instantiated MBean.
Throws:
javax.management.InstanceAlreadyExistsException - The MBean is already under the control of the MBeanServer.
javax.management.MBeanRegistrationException - The preRegister (MBeanRegistration interface) method of the MBean has thrown an exception. The MBean will not be registered.
javax.management.MBeanException - The constructor of the MBean has thrown an exception
javax.management.NotCompliantMBeanException - This class is not an JMX compliant MBean
javax.management.InstanceNotFoundException - The specified class loader is not registered in the MBeanServer.
javax.management.RuntimeOperationsException - Wraps a java.lang.IllegalArgumentException: The className passed in parameter is null, the ObjectName passed in parameter contains a pattern or no ObjectName is specified for the MBean.
javax.management.ReflectionException

createMBean

public javax.management.ObjectInstance createMBean(java.lang.String className,
                                                   javax.management.ObjectName name,
                                                   javax.management.ObjectName loaderName,
                                                   java.lang.Object[] params,
                                                   java.lang.String[] signature)
                                            throws javax.management.ReflectionException,
                                                   javax.management.InstanceAlreadyExistsException,
                                                   javax.management.MBeanRegistrationException,
                                                   javax.management.MBeanException,
                                                   javax.management.NotCompliantMBeanException,
                                                   javax.management.InstanceNotFoundException
Instantiates and registers a MBean with the MBeanServer using this client through the relevant adaptor.The class loader to be used is identified by its object name. An object name is associated to the MBean. If the object name of the loader is not specified, the system ClassLoader will be used.If the MBean object name given is null, the MBean can automatically provide its own name by implementing the MBeanRegistration interface. The call returns a reference to the new instance and its object name.

Parameters:
className - The class name of the MBean to be instantiated.
name - The object name of the MBean. May be null.
params - An array containing the parameters of the constructor to be invoked.
signature - An array containing the signature of the constructor to be invoked.
loaderName - The object name of the class loader to be used.
Returns:
An ObjectInstance, containing the ObjectName and the Java class name of the newly instantiated MBean.
Throws:
javax.management.ReflectionException - Wraps Wraps a ClassNotFoundException or a java.lang.Exception that occured trying to invoke the MBean's constructor.
javax.management.InstanceAlreadyExistsException - The MBean is already under the control of the MBeanServer.
javax.management.MBeanRegistrationException - The preRegister (MBeanRegistration interface) method of the MBean has thrown an exception. The MBean will not be registered.
javax.management.MBeanException - The constructor of the MBean has thrown an exception
javax.management.NotCompliantMBeanException - This class is not an JMX compliant MBean
javax.management.InstanceNotFoundException - The specified class loader is not registered in the MBeanServer.
javax.management.RuntimeOperationsException - Wraps a java.lang.IllegalArgumentException: The className passed in parameter is null, the ObjectName passed in parameter contains a pattern or no ObjectName is specified for the MBean.

getAttribute

public java.lang.Object getAttribute(javax.management.ObjectName name,
                                     java.lang.String attribute)
                              throws javax.management.MBeanException,
                                     javax.management.AttributeNotFoundException,
                                     javax.management.InstanceNotFoundException,
                                     javax.management.ReflectionException
Gets the value of a specific attribute of a named MBean using this client through the relevant adaptor. The MBean is identified by its object name.

Parameters:
name - The object name of the MBean from which the attribute is to be retrieved.
attribute - A String specifying the name of the attribute to be retrieved.
Returns:
The value of the retrieved attribute.
Throws:
javax.management.ReflectionException - wraps a ClassNotFoundException or a java.lang.Exception that occured trying to invoke the MBean's constructor.
javax.management.AttributeNotFoundException - The specified attribute is not accessible in the MBean.
javax.management.MBeanException - Wraps an exception thrown by the MBean's getter.
javax.management.InstanceNotFoundException - The specified MBean is not registered in the MBeanServer.
javax.management.ReflectionException - Wraps an java.lang.Exception thrown while trying to invoke the setter.
javax.management.RuntimeOperationsException - Wraps a java.lang.IllegalArgumentException: The object name in parameter is null or the attribute in parameter is null.

getAttributes

public javax.management.AttributeList getAttributes(javax.management.ObjectName name,
                                                    java.lang.String[] attributes)
                                             throws javax.management.InstanceNotFoundException,
                                                    javax.management.ReflectionException
Enables the values of several attributes of a named MBean using this client through the relevant adaptor. The MBean is identified by its object name.

Parameters:
name - The object name of the MBean from which the attributes are to be retrieved.
attributes - A list of the attributes to be retrieved.
Returns:
The list of the retrieved attributes.
Throws:
javax.management.InstanceNotFoundException - The specified MBean is not registered in the MBeanServer.
javax.management.ReflectionException - An exception occurred when trying to invoke the getAttributes method of a Dynamic MBean.
javax.management.RuntimeOperationsException - Wraps a java.lang.IllegalArgumentException: The object name in parameter is null or the attribute in parameter is null.

getDefaultDomain

public java.lang.String getDefaultDomain()
Returns the default domain used for naming the MBean. using this client through the relevant adaptor. The default domain name is used as the domain part in the ObjectName of MBeans if no domain is specified by the user.

Returns:
The default domain used for naming the MBean.

getMBeanCount

public java.lang.Integer getMBeanCount()
Returns the number of MBeans controlled by the MBeanServer using this client through the relevant adaptor.

Returns:
The number of MBeans controlled by the MBeanServer

getMBeanInfo

public javax.management.MBeanInfo getMBeanInfo(javax.management.ObjectName name)
                                        throws javax.management.InstanceNotFoundException,
                                               javax.management.IntrospectionException,
                                               javax.management.ReflectionException
This method discovers the attributes and operations that an MBean exposes for management using this client through the relevant adaptor.When flatten is false, inherited attributes are not returned.

Parameters:
name - The name of the MBean to analyze
Returns:
An instance of MBeanInfo allowing to retrieve all attributes and operations of this MBean.
Throws:
javax.management.InstanceNotFoundException - The specified MBean is not found.
javax.management.ReflectionException - An exception occurred when trying to invoke the getMBeanInfo of a Dynamic MBean.
javax.management.IntrospectionException

getObjectInstance

public javax.management.ObjectInstance getObjectInstance(javax.management.ObjectName name)
                                                  throws javax.management.InstanceNotFoundException
Gets the ObjectInstance for a given MBean registered with the MBean server using this client through the relevant adaptor.

Parameters:
name - The object name of the MBean.
Returns:
The ObjectInstance associated to the MBean specified by name.
Throws:
javax.management.InstanceNotFoundException - The MBean specified is not registered in the MBean server.

instantiate

public java.lang.Object instantiate(java.lang.String className)
                             throws javax.management.ReflectionException,
                                    javax.management.MBeanException
Instantiates an object using the list of all class loaders registered in the MBean server (Default Loader Repository using this client through the relevant adaptor. The object's class should have a public constructor. It returns a reference to the newly created object. The newly created object is not registered in the MBean server.

Parameters:
className - The class name of the object to be instantiated.
Returns:
The newly instantiated object.
Throws:
javax.management.ReflectionException - Wraps a ClassNotFoundException or the java.lang.Exception that occured trying to invoke the object's constructor.
javax.management.MBeanException - The constructor of the object has thrown an exception
javax.management.RuntimeOperationsException - Wraps a java.lang.IllegalArgumentException: The className passed in parameter is null.

instantiate

public java.lang.Object instantiate(java.lang.String className,
                                    java.lang.Object[] params,
                                    java.lang.String[] signature)
                             throws javax.management.ReflectionException,
                                    javax.management.MBeanException
Instantiates an object using the list of all class loaders registered in the MBean server (Default Loader Repository) using this client through the relevant adaptor.The object's class should have a public constructor. The call returns a reference to the newly created object. The newly created object is not registered in the MBean server.

Parameters:
className - The class name of the object to be instantiated.
params - An array containing the parameters of the constructor to be invoked.
signature - An array containing the signature of the constructor to be invoked.
Returns:
The newly instantiated object.
Throws:
javax.management.ReflectionException - Wraps a ClassNotFoundException or the java.lang.Exception that occured trying to invoke the object's constructor.
javax.management.MBeanException - The constructor of the object has thrown an exception
javax.management.RuntimeOperationsException - Wraps a java.lang.IllegalArgumentException: The className passed in parameter is null.

instantiate

public java.lang.Object instantiate(java.lang.String className,
                                    javax.management.ObjectName loaderName)
                             throws javax.management.ReflectionException,
                                    javax.management.MBeanException,
                                    javax.management.InstanceNotFoundException
Instantiates an object using the class Loader specified by its ObjectName using this client through the relevant adaptor. If the loader name is null, the ClassLoader that loaded the MBean Server will be used. The object's class should have a public constructor. It returns a reference to the newly created object. The newly created object is not registered in the MBean server.

Parameters:
className - The class name of the object to be instantiated.
loaderName - The object name of the class loader to be used.
Returns:
The newly instantiated object.
Throws:
javax.management.ReflectionException - Wraps a ClassNotFoundException or the java.lang.Exception that occured trying to invoke the object's constructor.
javax.management.MBeanException - The constructor of the object has thrown an exception
javax.management.InstanceNotFoundException - The specified class loader is not registered in the MBeanServer.
javax.management.RuntimeOperationsException - Wraps a java.lang.IllegalArgumentException: The className passed in parameter is null.

instantiate

public java.lang.Object instantiate(java.lang.String className,
                                    javax.management.ObjectName loaderName,
                                    java.lang.Object[] params,
                                    java.lang.String[] signature)
                             throws javax.management.ReflectionException,
                                    javax.management.MBeanException,
                                    javax.management.InstanceNotFoundException
Instantiates an object using this client through the relevant adaptor. The class loader to be used is identified by its object name. If the object name of the loader is null, the ClassLoader that loaded the MBean server will be used. The object's class should have a public constructor. The call returns a reference to the newly created object. The newly created object is not registered in the MBean server.

Parameters:
className - The class name of the object to be instantiated.
loaderName - The object name of the class loader to be used.
params - An array containing the parameters of the constructor to be invoked.
signature - An array containing the signature of the constructor to be invoked.
Returns:
The newly instantiated object.
Throws:
javax.management.ReflectionException - Wraps a ClassNotFoundException or the java.lang.Exception that occured trying to invoke the object's constructor.
javax.management.MBeanException - The constructor of the object has thrown an exception
javax.management.InstanceNotFoundException - The specified class loader is not registered in the MBeanServer.
javax.management.RuntimeOperationsException - Wraps a java.lang.IllegalArgumentException: The className passed in parameter is null.

invoke

public java.lang.Object invoke(javax.management.ObjectName name,
                               java.lang.String actionName,
                               java.lang.Object[] params,
                               java.lang.String[] signature)
                        throws javax.management.InstanceNotFoundException,
                               javax.management.MBeanException,
                               javax.management.ReflectionException
Invokes an action on an MBean using this client through the relevant adaptor.

Parameters:
name - The object name of the MBean on which the method is to be invoked.
actionName - The name of the action to be invoked.
params - An array containing the parameters to be set when the action is invoked
signature - An array containing the signature of the action. The class objects will be loaded using the same class loader as the one used for loading the MBean on which the action was invoked.
Returns:
The object returned by the action, which represents the result ofinvoking the action on the specified MBean.
Throws:
javax.management.InstanceNotFoundException - The specified MBean is not registered in the MBeanServer.
javax.management.MBeanException - Wraps an exception thrown by the MBean's invoked method.
javax.management.ReflectionException - Wraps an java.lang.Exception thrown while trying to invoke the method.

isRegistered

public boolean isRegistered(javax.management.ObjectName name)
Checks whether an MBean, identified by its object name, is already registered with the MBeanServer using this client through the relevant adaptor.

Parameters:
name - The object name of the MBean to be checked.
Returns:
true if the MBean is already controlled by the MBeanServer, false otherwise.
Throws:
javax.management.RuntimeOperationsException - Wraps a java.lang.IllegalArgumentException: The ObjectName parameter is null.

isInstanceOf

public boolean isInstanceOf(javax.management.ObjectName name,
                            java.lang.String className)
                     throws javax.management.InstanceNotFoundException
Returns true if the MBean specified is an instance of the specified class, false otherwise.

Parameters:
name - The object name of the MBean to be checked.
className - The name of the class.
Returns:
true if the MBean is the instance of the specified class, false otherwise.
Throws:
javax.management.InstanceNotFoundException - The MBean specified is not registered in the MBean server.

queryMBeans

public java.util.Set queryMBeans(javax.management.ObjectName name,
                                 javax.management.QueryExp query)
Gets MBeans controlled by the MBeanServer using this client through the relevant adaptor. This method allows any of the following to be obtained: All MBeans, a set of MBeans specified by pattern matching on the ObjectName and/or a Query expression, a specific MBean. When the object name is null or empty, all objects are to be selected (and filtered if a query is specified). It returns the set of ObjectInstance objects (containing the ObjectName and the Java Class name) for the selected MBeans.

Parameters:
name - The object name pattern identifying the MBeans to be retrieved. If null orempty all the MBeans registered will be retrieved.
query - The query expression to be applied for selecting MBeans.
Returns:
A set containing the ObjectInstance objects for the selected MBeans. If no MBean satisfies the query an empty list is returned.

queryNames

public java.util.Set queryNames(javax.management.ObjectName name,
                                javax.management.QueryExp query)
Gets the names of MBeans controlled by the MBeanServer using this client through the relevant adaptor. This method enables any of the following to be obtained: The names of all MBeans, the names of a set of MBeans specified by pattern matching on the ObjectName and/or a Query expression, a specific MBean name(equivalent to testing whether an MBean is registered). When the object name is null or empty, all objects are to be selected (and filtered if a query is specified). It returns the set of ObjectNames for the MBeans selected.

Parameters:
name - The object name pattern identifying the MBean names to be retrieved. If null or empty, the name of all registered MBeans will be retrieved.
query - The query expression to be applied for selecting MBeans.
Returns:
A set containing the ObjectNames for the MBeans selected. If no MBean satisfies the query an empty list is returned.

registerMBean

public javax.management.ObjectInstance registerMBean(java.lang.String className,
                                                     javax.management.ObjectName name)
                                              throws javax.management.InstanceAlreadyExistsException,
                                                     javax.management.MBeanRegistrationException,
                                                     javax.management.NotCompliantMBeanException
Registers a pre-existing object as an MBean with the MBeanServer using this client through the relevant adaptor. If the object name given is null, the MBean may automatically provide its own name by implementing the MBeanRegistration interface. The call returns the MBean name.

Parameters:
className - The classname of the Java Bean to be registered as an MBean.
name - The object name of the MBean. May be null.
Returns:
The ObjectInstance for the MBean that has been registered.
Throws:
javax.management.InstanceAlreadyExistsException - The MBean is already under the control of the MBeanServer.
javax.management.MBeanRegistrationException - The preRegister (MBeanRegistration interface) method of the MBean has thrown an exception. The MBean will not be registered.
javax.management.NotCompliantMBeanException - This object is not an JMX compliant MBean
javax.management.RuntimeOperationsException - Wraps a java.lang.IllegalArgumentException: The object passed in parameter is null or no object name is specified.

registerMBean

public javax.management.ObjectInstance registerMBean(java.lang.Object object,
                                                     javax.management.ObjectName objectName)
                                              throws javax.management.InstanceAlreadyExistsException,
                                                     javax.management.MBeanRegistrationException,
                                                     javax.management.NotCompliantMBeanException
Throws:
javax.management.InstanceAlreadyExistsException
javax.management.MBeanRegistrationException
javax.management.NotCompliantMBeanException

registerAsModelMBean

public javax.management.ObjectInstance registerAsModelMBean(java.lang.Object mbean,
                                                            java.lang.String xmlFile,
                                                            javax.management.ObjectName name)
                                                     throws javax.management.InstanceAlreadyExistsException,
                                                            javax.management.MBeanRegistrationException,
                                                            javax.management.NotCompliantMBeanException
Remote method call which registers the MBean. If the passed mbean object is String instance (i.e classname), then this mbean will be instantiated locally as modelmbean in the mbean server and registered. If not instance of java.lang.String class, then this object will be considered as remote modelmbean object. If the mbean object is java.lang.String instance, then the xmlFile means the path of the xml file name locally in the mbean server. If not then the String object of xmlFile will contain the complete xml file.

Parameters:
mbean - The mbean object which is to be instantiated locally as modelmbean in the mbean server and registered.
xmlFile - The path of the xml file name locally in the mbean server.
name - The object name of the MBean. May be null.
Returns:
The ObjectInstance for the MBean that has been registered.
Throws:
javax.management.InstanceAlreadyExistsException - The MBean is already under the control of the MBeanServer.
javax.management.MBeanRegistrationException - The preRegister (MBeanRegistration interface) method of the MBean has thrown an exception. The MBean will not be registered.
javax.management.NotCompliantMBeanException - This object is not an JMX compliant MBean
javax.management.RuntimeOperationsException - Wraps a java.lang.IllegalArgumentException: The object passed in parameter is null or no object name is specified.

removeNotificationListener

public void removeNotificationListener(javax.management.ObjectName name,
                                       javax.management.NotificationListener listener)
                                throws javax.management.InstanceNotFoundException,
                                       javax.management.ListenerNotFoundException
Enables a listener for an MBean to be removed using this client through the relevant adaptor.

Parameters:
name - The name of the MBean on which the listener should be removed
listener - The listener object which will handles notifications emitted by the registered MBean.This method will remove all information related to this listener.
Throws:
javax.management.InstanceNotFoundException - The MBean name doesn't correspond to a registered MBean.
javax.management.ListenerNotFoundException - The couple (listener,handback) is not registered in the MBean. The exception message contains either "listener", "handback" or the object name depending on which object cannot be found.

removeNotificationListener

public void removeNotificationListener(javax.management.ObjectName name,
                                       javax.management.ObjectName listener)
                                throws javax.management.InstanceNotFoundException,
                                       javax.management.ListenerNotFoundException
Enables a listener for an MBean to be removed using this client through the relevant adaptor.

Parameters:
name - The name of the MBean on which the listener should be removed
listener - The listener name which will handles notifications emitted by the registered MBean. This method will remove all information related to this listener.
Throws:
javax.management.InstanceNotFoundException - The MBean name or the listener name doesn't correspond to a registered MBean
javax.management.ListenerNotFoundException - The couple (listener,handback) is not registered in the MBean. The exception message contains either "listener", "handback" or the object name depending on which object cannot be found.

setAttribute

public void setAttribute(javax.management.ObjectName name,
                         javax.management.Attribute attribute)
                  throws javax.management.InstanceNotFoundException,
                         javax.management.AttributeNotFoundException,
                         javax.management.InvalidAttributeValueException,
                         javax.management.MBeanException,
                         javax.management.ReflectionException
Sets the value of a specific attribute of a named MBean using this client through the relevant adaptor. The MBean is identified by its object name.

Parameters:
name - The name of the MBean within which the attribute is to be set.
attribute - The identification of the attribute to be set and the value it is to be set to.
Throws:
javax.management.InstanceNotFoundException - The specified MBean is not registered in the MBeanServer.
javax.management.AttributeNotFoundException - The specified attribute is not accessible in the MBean.
javax.management.InvalidAttributeValueException - The specified value for the attribute is not valid.
javax.management.MBeanException - Wraps an exception thrown by the MBean's setter.
javax.management.ReflectionException - Wraps an java.lang.Exception thrown while trying to invoke the setter.
javax.management.RuntimeOperationsException - Wraps a java.lang.IllegalArgumentException: The object name in parameter is null or the attribute in parameter is null.

setAttributes

public javax.management.AttributeList setAttributes(javax.management.ObjectName name,
                                                    javax.management.AttributeList attributes)
                                             throws javax.management.InstanceNotFoundException,
                                                    javax.management.ReflectionException
Sets the values of several attributes of a named MBean using this client through the relevant adaptor. The MBean is identified by its object name.

Parameters:
name - The object name of the MBean within which the attributes are to be set.
attributes - A list of attributes: The identification of the attributes to be set and the values they are to be set to.
Returns:
The list of attributes that were set, with their new values.
Throws:
javax.management.InstanceNotFoundException - The specified MBean is not registered in the MBeanServer.
javax.management.ReflectionException - An exception occurred when trying to invoke the getAttributes method of a Dynamic MBean.
javax.management.RuntimeOperationsException - Wraps a java.lang.IllegalArgumentException: The object name in parameter is null or attributes in parameter is null.

unregisterMBean

public void unregisterMBean(javax.management.ObjectName name)
                     throws javax.management.InstanceNotFoundException,
                            javax.management.MBeanRegistrationException
De-registers an MBean from the MBeanServer using this client through the relevant adaptor. The MBean is identified by its object name. Once the method has been invoked, the MBean may no longer be accessed by its object name.

Parameters:
name - The object name of the MBean to be de-registered.
Throws:
javax.management.InstanceNotFoundException - The specified MBean is not registered in the MBeanServer.
javax.management.MBeanRegistrationException - The preDeregister (MBeanRegistration interface) method of the MBean has thrown an exception.
javax.management.RuntimeOperationsException - Wraps a java.lang.IllegalArgumentException: The object name in parameter is null or the MBean you are when trying to de-register is the MBeanServerDelegate MBean.