org.jboss.mx.util
Class MBeanProxyExt

java.lang.Object
  extended byorg.jboss.mx.util.MBeanProxyExt
All Implemented Interfaces:
java.lang.reflect.InvocationHandler, MBeanProxyInstance (src)

public class MBeanProxyExt
extends java.lang.Object
implements java.lang.reflect.InvocationHandler, MBeanProxyInstance (src)

A factory for producing MBean proxies.

Created proxies will also implement MBeanProxyInstance (src) allowing access to the proxies configuration.

Revisions:

20020321 Adrian Brock:


Method Summary
static java.lang.Object create(java.lang.Class intf, ObjectName (src)  name)
          Create an MBean proxy.
static java.lang.Object create(java.lang.Class intf, ObjectName (src)  name, MBeanServer (src)  server)
          Create an MBean proxy.
static java.lang.Object create(java.lang.Class intf, java.lang.String name)
          Create an MBean proxy.
static java.lang.Object create(java.lang.Class intf, java.lang.String name, MBeanServer (src)  server)
          Create an MBean proxy.
 boolean equals(java.lang.Object that)
          We need to override this because by default equals returns false when called on the proxy object and then relayed here.
 MBeanServer (src) getMBeanProxyMBeanServer()
          Return the MBeanServer for this proxy.
 ObjectName (src) getMBeanProxyObjectName()
          Return the ObjectName for this proxy.
 int hashCode()
          As with equals, use the MBeanServer + ObjectName to calculate the hashCode
 java.lang.Object invoke(java.lang.Object proxy, java.lang.reflect.Method method, java.lang.Object[] args)
          Invoke the configured MBean via the target MBeanServer and decode any resulting JMX exceptions that are thrown.
 java.lang.String toString()
          avoid the default printout, e.g.
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Method Detail

invoke

public java.lang.Object invoke(java.lang.Object proxy,
                               java.lang.reflect.Method method,
                               java.lang.Object[] args)
                        throws java.lang.Throwable
Invoke the configured MBean via the target MBeanServer and decode any resulting JMX exceptions that are thrown.

Specified by:
invoke in interface java.lang.reflect.InvocationHandler
Throws:
java.lang.Throwable

getMBeanProxyObjectName

public final ObjectName (src)  getMBeanProxyObjectName()
Description copied from interface: MBeanProxyInstance (src)
Return the ObjectName for this proxy.

Specified by:
getMBeanProxyObjectName in interface MBeanProxyInstance (src)
Returns:
The ObjectName for this proxy.

getMBeanProxyMBeanServer

public final MBeanServer (src)  getMBeanProxyMBeanServer()
Description copied from interface: MBeanProxyInstance (src)
Return the MBeanServer for this proxy.

Specified by:
getMBeanProxyMBeanServer in interface MBeanProxyInstance (src)
Returns:
The ObjectName for this proxy.

equals

public boolean equals(java.lang.Object that)
We need to override this because by default equals returns false when called on the proxy object and then relayed here.


hashCode

public int hashCode()
As with equals, use the MBeanServer + ObjectName to calculate the hashCode


toString

public java.lang.String toString()
avoid the default printout, e.g. org.jboss.mx.util.MBeanProxyExt@120540c


create

public static java.lang.Object create(java.lang.Class intf,
                                      java.lang.String name)
                               throws MalformedObjectNameException (src) 
Create an MBean proxy.

Parameters:
intf - The interface which the proxy will implement.
name - A string used to construct the ObjectName of the MBean to proxy to.
Returns:
A MBean proxy.
Throws:
MalformedObjectNameException (src) - Invalid object name.

create

public static java.lang.Object create(java.lang.Class intf,
                                      java.lang.String name,
                                      MBeanServer (src)  server)
                               throws MalformedObjectNameException (src) 
Create an MBean proxy.

Parameters:
intf - The interface which the proxy will implement.
name - A string used to construct the ObjectName of the MBean to proxy to.
server - The MBeanServer that contains the MBean to proxy to.
Returns:
A MBean proxy.
Throws:
MalformedObjectNameException (src) - Invalid object name.

create

public static java.lang.Object create(java.lang.Class intf,
                                      ObjectName (src)  name)
Create an MBean proxy.

Parameters:
intf - The interface which the proxy will implement.
name - The name of the MBean to proxy invocations to.
Returns:
A MBean proxy.

create

public static java.lang.Object create(java.lang.Class intf,
                                      ObjectName (src)  name,
                                      MBeanServer (src)  server)
Create an MBean proxy.

Parameters:
intf - The interface which the proxy will implement.
name - The name of the MBean to proxy invocations to.
server - The MBeanServer that contains the MBean to proxy to.
Returns:
A MBean proxy.