org.ow2.jasmine.monitoring.mbeancmd
Class JmxCnxWrapper

java.lang.Object
  extended by org.ow2.jasmine.monitoring.mbeancmd.JmxCnxWrapper
All Implemented Interfaces:
javax.management.MBeanServerConnection

public class JmxCnxWrapper
extends java.lang.Object
implements javax.management.MBeanServerConnection

JMX connection wrapper.


Field Summary
private  javax.management.remote.JMXConnector jmxConnector
          JMX connector.
private  java.lang.String jmxUrl
          JMX URL to connect to.
private  javax.management.MBeanServerConnection mbscnx
          Connection to the MBean server.
 
Constructor Summary
JmxCnxWrapper(java.lang.String jmxUrl)
          Constructor: saves the JMX URL.
 
Method Summary
 void addNotificationListener(javax.management.ObjectName arg0, javax.management.NotificationListener arg1, javax.management.NotificationFilter arg2, java.lang.Object arg3)
          Implementation of inherited method.
 void addNotificationListener(javax.management.ObjectName arg0, javax.management.ObjectName arg1, javax.management.NotificationFilter arg2, java.lang.Object arg3)
          Implementation of inherited method.
private  void analyseException(java.io.IOException e)
          Analyses e, closes JMX if necessary and and throws e back.
private  void closeJMX()
          Closes the JMX connection.
 void connect()
          Connects to the JMX URL.
 javax.management.ObjectInstance createMBean(java.lang.String arg0, javax.management.ObjectName arg1)
          Implementation of inherited method.
 javax.management.ObjectInstance createMBean(java.lang.String arg0, javax.management.ObjectName arg1, java.lang.Object[] arg2, java.lang.String[] arg3)
          Implementation of inherited method.
 javax.management.ObjectInstance createMBean(java.lang.String arg0, javax.management.ObjectName arg1, javax.management.ObjectName arg2)
          Implementation of inherited method.
 javax.management.ObjectInstance createMBean(java.lang.String arg0, javax.management.ObjectName arg1, javax.management.ObjectName arg2, java.lang.Object[] arg3, java.lang.String[] arg4)
          Implementation of inherited method.
 java.lang.Object getAttribute(javax.management.ObjectName arg0, java.lang.String arg1)
          Implementation of inherited method.
 javax.management.AttributeList getAttributes(javax.management.ObjectName arg0, java.lang.String[] arg1)
          Implementation of inherited method.
 java.lang.String getDefaultDomain()
          Implementation of inherited method.
 java.lang.String[] getDomains()
          Implementation of inherited method.
 java.lang.String getJmxUrl()
           
 java.lang.Integer getMBeanCount()
          Implementation of inherited method.
 javax.management.MBeanInfo getMBeanInfo(javax.management.ObjectName arg0)
          Implementation of inherited method.
 javax.management.ObjectInstance getObjectInstance(javax.management.ObjectName arg0)
          Implementation of inherited method.
 java.lang.Object invoke(javax.management.ObjectName arg0, java.lang.String arg1, java.lang.Object[] arg2, java.lang.String[] arg3)
          Implementation of inherited method.
 boolean isInstanceOf(javax.management.ObjectName arg0, java.lang.String arg1)
          Implementation of inherited method.
 boolean isRegistered(javax.management.ObjectName arg0)
          Implementation of inherited method.
static void main(java.lang.String[] args)
          Tests the JmxCnxWrapper implementation.
 java.util.Set queryMBeans(javax.management.ObjectName arg0, javax.management.QueryExp arg1)
          Implementation of inherited method.
 java.util.Set queryNames(javax.management.ObjectName arg0, javax.management.QueryExp arg1)
          Implementation of inherited method.
 void removeNotificationListener(javax.management.ObjectName arg0, javax.management.NotificationListener arg1)
          Implementation of inherited method.
 void removeNotificationListener(javax.management.ObjectName arg0, javax.management.NotificationListener arg1, javax.management.NotificationFilter arg2, java.lang.Object arg3)
          Implementation of inherited method.
 void removeNotificationListener(javax.management.ObjectName arg0, javax.management.ObjectName arg1)
          Implementation of inherited method.
 void removeNotificationListener(javax.management.ObjectName arg0, javax.management.ObjectName arg1, javax.management.NotificationFilter arg2, java.lang.Object arg3)
          Implementation of inherited method.
 void setAttribute(javax.management.ObjectName arg0, javax.management.Attribute arg1)
          Implementation of inherited method.
 javax.management.AttributeList setAttributes(javax.management.ObjectName arg0, javax.management.AttributeList arg1)
          Implementation of inherited method.
 void setJmxUrl(java.lang.String url)
           
 void setMBeanServerConnection(javax.management.MBeanServerConnection cnx)
           
 void unregisterMBean(javax.management.ObjectName arg0)
          Implementation of inherited method.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

mbscnx

private javax.management.MBeanServerConnection mbscnx
Connection to the MBean server.


jmxConnector

private javax.management.remote.JMXConnector jmxConnector
JMX connector.


jmxUrl

private java.lang.String jmxUrl
JMX URL to connect to.

Constructor Detail

JmxCnxWrapper

public JmxCnxWrapper(java.lang.String jmxUrl)
Constructor: saves the JMX URL.

Parameters:
jmxUrl - JMX URL to use in the wrapper.
Method Detail

addNotificationListener

public void addNotificationListener(javax.management.ObjectName arg0,
                                    javax.management.NotificationListener arg1,
                                    javax.management.NotificationFilter arg2,
                                    java.lang.Object arg3)
                             throws javax.management.InstanceNotFoundException,
                                    java.io.IOException
Implementation of inherited method.

Specified by:
addNotificationListener in interface javax.management.MBeanServerConnection
Throws:
javax.management.InstanceNotFoundException
java.io.IOException
See Also:
MBeanServerConnection.addNotificationListener(javax.management.ObjectName, javax.management.NotificationListener, javax.management.NotificationFilter, java.lang.Object)

addNotificationListener

public void addNotificationListener(javax.management.ObjectName arg0,
                                    javax.management.ObjectName arg1,
                                    javax.management.NotificationFilter arg2,
                                    java.lang.Object arg3)
                             throws javax.management.InstanceNotFoundException,
                                    java.io.IOException
Implementation of inherited method.

Specified by:
addNotificationListener in interface javax.management.MBeanServerConnection
Throws:
javax.management.InstanceNotFoundException
java.io.IOException
See Also:
MBeanServerConnection.addNotificationListener(javax.management.ObjectName, javax.management.ObjectName, javax.management.NotificationFilter, java.lang.Object)

createMBean

public javax.management.ObjectInstance createMBean(java.lang.String arg0,
                                                   javax.management.ObjectName arg1)
                                            throws javax.management.ReflectionException,
                                                   javax.management.InstanceAlreadyExistsException,
                                                   javax.management.MBeanRegistrationException,
                                                   javax.management.MBeanException,
                                                   javax.management.NotCompliantMBeanException,
                                                   java.io.IOException
Implementation of inherited method.

Specified by:
createMBean in interface javax.management.MBeanServerConnection
Throws:
javax.management.ReflectionException
javax.management.InstanceAlreadyExistsException
javax.management.MBeanRegistrationException
javax.management.MBeanException
javax.management.NotCompliantMBeanException
java.io.IOException
See Also:
MBeanServerConnection.createMBean(java.lang.String, javax.management.ObjectName)

createMBean

public javax.management.ObjectInstance createMBean(java.lang.String arg0,
                                                   javax.management.ObjectName arg1,
                                                   javax.management.ObjectName arg2)
                                            throws javax.management.ReflectionException,
                                                   javax.management.InstanceAlreadyExistsException,
                                                   javax.management.MBeanRegistrationException,
                                                   javax.management.MBeanException,
                                                   javax.management.NotCompliantMBeanException,
                                                   javax.management.InstanceNotFoundException,
                                                   java.io.IOException
Implementation of inherited method.

Specified by:
createMBean in interface javax.management.MBeanServerConnection
Throws:
javax.management.ReflectionException
javax.management.InstanceAlreadyExistsException
javax.management.MBeanRegistrationException
javax.management.MBeanException
javax.management.NotCompliantMBeanException
javax.management.InstanceNotFoundException
java.io.IOException
See Also:
MBeanServerConnection.createMBean(java.lang.String, javax.management.ObjectName, javax.management.ObjectName)

createMBean

public javax.management.ObjectInstance createMBean(java.lang.String arg0,
                                                   javax.management.ObjectName arg1,
                                                   java.lang.Object[] arg2,
                                                   java.lang.String[] arg3)
                                            throws javax.management.ReflectionException,
                                                   javax.management.InstanceAlreadyExistsException,
                                                   javax.management.MBeanRegistrationException,
                                                   javax.management.MBeanException,
                                                   javax.management.NotCompliantMBeanException,
                                                   java.io.IOException
Implementation of inherited method.

Specified by:
createMBean in interface javax.management.MBeanServerConnection
Throws:
javax.management.ReflectionException
javax.management.InstanceAlreadyExistsException
javax.management.MBeanRegistrationException
javax.management.MBeanException
javax.management.NotCompliantMBeanException
java.io.IOException
See Also:
MBeanServerConnection.createMBean(java.lang.String, javax.management.ObjectName, java.lang.Object[], java.lang.String[])

createMBean

public javax.management.ObjectInstance createMBean(java.lang.String arg0,
                                                   javax.management.ObjectName arg1,
                                                   javax.management.ObjectName arg2,
                                                   java.lang.Object[] arg3,
                                                   java.lang.String[] arg4)
                                            throws javax.management.ReflectionException,
                                                   javax.management.InstanceAlreadyExistsException,
                                                   javax.management.MBeanRegistrationException,
                                                   javax.management.MBeanException,
                                                   javax.management.NotCompliantMBeanException,
                                                   javax.management.InstanceNotFoundException,
                                                   java.io.IOException
Implementation of inherited method.

Specified by:
createMBean in interface javax.management.MBeanServerConnection
Throws:
javax.management.ReflectionException
javax.management.InstanceAlreadyExistsException
javax.management.MBeanRegistrationException
javax.management.MBeanException
javax.management.NotCompliantMBeanException
javax.management.InstanceNotFoundException
java.io.IOException
See Also:
MBeanServerConnection.createMBean(java.lang.String, javax.management.ObjectName, javax.management.ObjectName, java.lang.Object[], java.lang.String[])

getAttribute

public java.lang.Object getAttribute(javax.management.ObjectName arg0,
                                     java.lang.String arg1)
                              throws javax.management.MBeanException,
                                     javax.management.AttributeNotFoundException,
                                     javax.management.InstanceNotFoundException,
                                     javax.management.ReflectionException,
                                     java.io.IOException
Implementation of inherited method.

Specified by:
getAttribute in interface javax.management.MBeanServerConnection
Throws:
javax.management.MBeanException
javax.management.AttributeNotFoundException
javax.management.InstanceNotFoundException
javax.management.ReflectionException
java.io.IOException
See Also:
MBeanServerConnection.getAttribute(javax.management.ObjectName, java.lang.String)

getAttributes

public javax.management.AttributeList getAttributes(javax.management.ObjectName arg0,
                                                    java.lang.String[] arg1)
                                             throws javax.management.InstanceNotFoundException,
                                                    javax.management.ReflectionException,
                                                    java.io.IOException
Implementation of inherited method.

Specified by:
getAttributes in interface javax.management.MBeanServerConnection
Throws:
javax.management.InstanceNotFoundException
javax.management.ReflectionException
java.io.IOException
See Also:
MBeanServerConnection.getAttributes(javax.management.ObjectName, java.lang.String[])

getDefaultDomain

public java.lang.String getDefaultDomain()
                                  throws java.io.IOException
Implementation of inherited method.

Specified by:
getDefaultDomain in interface javax.management.MBeanServerConnection
Throws:
java.io.IOException
See Also:
MBeanServerConnection.getDefaultDomain()

getDomains

public java.lang.String[] getDomains()
                              throws java.io.IOException
Implementation of inherited method.

Specified by:
getDomains in interface javax.management.MBeanServerConnection
Throws:
java.io.IOException
See Also:
MBeanServerConnection.getDomains()

getMBeanCount

public java.lang.Integer getMBeanCount()
                                throws java.io.IOException
Implementation of inherited method.

Specified by:
getMBeanCount in interface javax.management.MBeanServerConnection
Throws:
java.io.IOException
See Also:
MBeanServerConnection.getMBeanCount()

getMBeanInfo

public javax.management.MBeanInfo getMBeanInfo(javax.management.ObjectName arg0)
                                        throws javax.management.InstanceNotFoundException,
                                               javax.management.IntrospectionException,
                                               javax.management.ReflectionException,
                                               java.io.IOException
Implementation of inherited method.

Specified by:
getMBeanInfo in interface javax.management.MBeanServerConnection
Throws:
javax.management.InstanceNotFoundException
javax.management.IntrospectionException
javax.management.ReflectionException
java.io.IOException
See Also:
MBeanServerConnection.getMBeanInfo(javax.management.ObjectName)

getObjectInstance

public javax.management.ObjectInstance getObjectInstance(javax.management.ObjectName arg0)
                                                  throws javax.management.InstanceNotFoundException,
                                                         java.io.IOException
Implementation of inherited method.

Specified by:
getObjectInstance in interface javax.management.MBeanServerConnection
Throws:
javax.management.InstanceNotFoundException
java.io.IOException
See Also:
MBeanServerConnection.getObjectInstance(javax.management.ObjectName)

invoke

public java.lang.Object invoke(javax.management.ObjectName arg0,
                               java.lang.String arg1,
                               java.lang.Object[] arg2,
                               java.lang.String[] arg3)
                        throws javax.management.InstanceNotFoundException,
                               javax.management.MBeanException,
                               javax.management.ReflectionException,
                               java.io.IOException
Implementation of inherited method.

Specified by:
invoke in interface javax.management.MBeanServerConnection
Throws:
javax.management.InstanceNotFoundException
javax.management.MBeanException
javax.management.ReflectionException
java.io.IOException
See Also:
MBeanServerConnection.invoke(javax.management.ObjectName, java.lang.String, java.lang.Object[], java.lang.String[])

isInstanceOf

public boolean isInstanceOf(javax.management.ObjectName arg0,
                            java.lang.String arg1)
                     throws javax.management.InstanceNotFoundException,
                            java.io.IOException
Implementation of inherited method.

Specified by:
isInstanceOf in interface javax.management.MBeanServerConnection
Throws:
javax.management.InstanceNotFoundException
java.io.IOException
See Also:
MBeanServerConnection.isInstanceOf(javax.management.ObjectName, java.lang.String)

isRegistered

public boolean isRegistered(javax.management.ObjectName arg0)
                     throws java.io.IOException
Implementation of inherited method.

Specified by:
isRegistered in interface javax.management.MBeanServerConnection
Throws:
java.io.IOException
See Also:
MBeanServerConnection.isRegistered(javax.management.ObjectName)

queryMBeans

public java.util.Set queryMBeans(javax.management.ObjectName arg0,
                                 javax.management.QueryExp arg1)
                          throws java.io.IOException
Implementation of inherited method.

Specified by:
queryMBeans in interface javax.management.MBeanServerConnection
Throws:
java.io.IOException
See Also:
MBeanServerConnection.queryMBeans(javax.management.ObjectName, javax.management.QueryExp)

queryNames

public java.util.Set queryNames(javax.management.ObjectName arg0,
                                javax.management.QueryExp arg1)
                         throws java.io.IOException
Implementation of inherited method.

Specified by:
queryNames in interface javax.management.MBeanServerConnection
Throws:
java.io.IOException
See Also:
MBeanServerConnection.queryNames(javax.management.ObjectName, javax.management.QueryExp)

removeNotificationListener

public void removeNotificationListener(javax.management.ObjectName arg0,
                                       javax.management.NotificationListener arg1)
                                throws javax.management.InstanceNotFoundException,
                                       javax.management.ListenerNotFoundException,
                                       java.io.IOException
Implementation of inherited method.

Specified by:
removeNotificationListener in interface javax.management.MBeanServerConnection
Throws:
javax.management.InstanceNotFoundException
javax.management.ListenerNotFoundException
java.io.IOException
See Also:
MBeanServerConnection.removeNotificationListener(javax.management.ObjectName, javax.management.NotificationListener)

removeNotificationListener

public void removeNotificationListener(javax.management.ObjectName arg0,
                                       javax.management.ObjectName arg1)
                                throws javax.management.InstanceNotFoundException,
                                       javax.management.ListenerNotFoundException,
                                       java.io.IOException
Implementation of inherited method.

Specified by:
removeNotificationListener in interface javax.management.MBeanServerConnection
Throws:
javax.management.InstanceNotFoundException
javax.management.ListenerNotFoundException
java.io.IOException
See Also:
MBeanServerConnection.removeNotificationListener(javax.management.ObjectName, javax.management.ObjectName)

removeNotificationListener

public void removeNotificationListener(javax.management.ObjectName arg0,
                                       javax.management.NotificationListener arg1,
                                       javax.management.NotificationFilter arg2,
                                       java.lang.Object arg3)
                                throws javax.management.InstanceNotFoundException,
                                       javax.management.ListenerNotFoundException,
                                       java.io.IOException
Implementation of inherited method.

Specified by:
removeNotificationListener in interface javax.management.MBeanServerConnection
Throws:
javax.management.InstanceNotFoundException
javax.management.ListenerNotFoundException
java.io.IOException
See Also:
MBeanServerConnection.removeNotificationListener(javax.management.ObjectName, javax.management.NotificationListener, javax.management.NotificationFilter, java.lang.Object)

removeNotificationListener

public void removeNotificationListener(javax.management.ObjectName arg0,
                                       javax.management.ObjectName arg1,
                                       javax.management.NotificationFilter arg2,
                                       java.lang.Object arg3)
                                throws javax.management.InstanceNotFoundException,
                                       javax.management.ListenerNotFoundException,
                                       java.io.IOException
Implementation of inherited method.

Specified by:
removeNotificationListener in interface javax.management.MBeanServerConnection
Throws:
javax.management.InstanceNotFoundException
javax.management.ListenerNotFoundException
java.io.IOException
See Also:
MBeanServerConnection.removeNotificationListener(javax.management.ObjectName, javax.management.ObjectName, javax.management.NotificationFilter, java.lang.Object)

setAttribute

public void setAttribute(javax.management.ObjectName arg0,
                         javax.management.Attribute arg1)
                  throws javax.management.InstanceNotFoundException,
                         javax.management.AttributeNotFoundException,
                         javax.management.InvalidAttributeValueException,
                         javax.management.MBeanException,
                         javax.management.ReflectionException,
                         java.io.IOException
Implementation of inherited method.

Specified by:
setAttribute in interface javax.management.MBeanServerConnection
Throws:
javax.management.InstanceNotFoundException
javax.management.AttributeNotFoundException
javax.management.InvalidAttributeValueException
javax.management.MBeanException
javax.management.ReflectionException
java.io.IOException
See Also:
MBeanServerConnection.setAttribute(javax.management.ObjectName, javax.management.Attribute)

setAttributes

public javax.management.AttributeList setAttributes(javax.management.ObjectName arg0,
                                                    javax.management.AttributeList arg1)
                                             throws javax.management.InstanceNotFoundException,
                                                    javax.management.ReflectionException,
                                                    java.io.IOException
Implementation of inherited method.

Specified by:
setAttributes in interface javax.management.MBeanServerConnection
Throws:
javax.management.InstanceNotFoundException
javax.management.ReflectionException
java.io.IOException
See Also:
MBeanServerConnection.setAttributes(javax.management.ObjectName, javax.management.AttributeList)

unregisterMBean

public void unregisterMBean(javax.management.ObjectName arg0)
                     throws javax.management.InstanceNotFoundException,
                            javax.management.MBeanRegistrationException,
                            java.io.IOException
Implementation of inherited method.

Specified by:
unregisterMBean in interface javax.management.MBeanServerConnection
Throws:
javax.management.InstanceNotFoundException
javax.management.MBeanRegistrationException
java.io.IOException
See Also:
MBeanServerConnection.unregisterMBean(javax.management.ObjectName)

setMBeanServerConnection

public void setMBeanServerConnection(javax.management.MBeanServerConnection cnx)
Parameters:
cnx - setMBeanServerConnection to use in the JMX connector.

getJmxUrl

public java.lang.String getJmxUrl()
Returns:
The JMX URL used by this JMX connector.

setJmxUrl

public void setJmxUrl(java.lang.String url)
Parameters:
url - The JMX URL to be used by this JMX connector.

connect

public void connect()
             throws java.io.IOException
Connects to the JMX URL.

Throws:
java.io.IOException - If connection failed.

main

public static void main(java.lang.String[] args)
Tests the JmxCnxWrapper implementation.

Parameters:
args - URL to use as first argument.

analyseException

private void analyseException(java.io.IOException e)
                       throws java.io.IOException
Analyses e, closes JMX if necessary and and throws e back.

Parameters:
e - Exception to analyse.
Throws:
java.io.IOException - e.

closeJMX

private void closeJMX()
Closes the JMX connection.