Top Description Fields Constructors Methods
org.glassfish.gmbal

public Class AMXClient

extends Object
implements AMXMBeanInterface
Class Inheritance
All Implemented Interfaces
org.glassfish.gmbal.AMXMBeanInterface
Imports
java.io.IOException, java.util.HashMap, .Map, javax.management.Attribute, .AttributeList, .AttributeNotFoundException, .Descriptor, .InstanceNotFoundException, .IntrospectionException, .InvalidAttributeValueException, .JMException, .MBeanException, .MBeanInfo, .MBeanServerConnection, .MalformedObjectNameException, .ObjectName, .ReflectionException, .RuntimeOperationsException, javax.management.modelmbean.ModelMBeanInfo

This class implements a generic AMXMBeanInterface MBean which is connected to a possibly remote MBeanServerConnection (note that MBeanServer isA MBeanServerConnection, so we can actually create an AMXClientImpl simply by using the MBeanServer from the mom: this is useful for testing).

Note that this version of the AMXMBeanInterface API provides a generic get/set API that is identical to DynamicMBean, except that it only throws unchecked exceptions. This is far more convenient in practice than the JMX-standard checked exceptions.

Author
ken

Field Summary

Modifier and TypeField and Description
public static final ObjectName
NULL_OBJECTNAME

Special object name used to represent a NULL objectName result.

private ObjectName
private MBeanServerConnection

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
public boolean
equals(Object obj)

Overrides java.lang.Object.equals.

Indicates whether some other object is "equal to" this one.

private <T> T
fetchAttribute(String name, Class<T> type)

public Object
getAttribute(String attribute)

public AttributeList
getAttributes(String[] attributes)

public AMXClient[]
getChildren()

Implements org.glassfish.gmbal.AMXMBeanInterface.getChildren.

Containment hierarchy: Get all AMXMBeanInterface contained by this one, in no particular order.

public MBeanInfo
public Map<String, ?>
getMeta()

Implements org.glassfish.gmbal.AMXMBeanInterface.getMeta.

Get all metadata about this MBean.

public String
getName()

Implements org.glassfish.gmbal.AMXMBeanInterface.getName.

Usually the same as the ObjectName 'name' property, but can differ if the actual name contains characters that must be escaped for an ObjectName and/or if the MBean has a mutable name attribute.

public AMXClient
getParent()

Implements org.glassfish.gmbal.AMXMBeanInterface.getParent.

"go up one level": the MBean containing this one, can be null for root

public int
hashCode()

Overrides java.lang.Object.hashCode.

Returns a hash code value for this object.

public Object
invoke(String actionName, Object[] params, String[] signature)

private AMXClient
private AMXClient[]
private static ObjectName
public ObjectName
public void
setAttribute(String name, Object value)

public void
public AttributeList
public String
toString()

Overrides java.lang.Object.toString.

Returns a string representation of the object.

Inherited from java.lang.Object:
clonefinalizegetClassnotifynotifyAllwaitwaitwait

Field Detail

NULL_OBJECTNAMEback to summary
public static final ObjectName NULL_OBJECTNAME

Special object name used to represent a NULL objectName result.

onameback to summary
private ObjectName oname
serverback to summary
private MBeanServerConnection server

Constructor Detail

AMXClientback to summary
public AMXClient(MBeanServerConnection server, ObjectName oname)

Method Detail

equalsback to summary
public boolean equals(Object obj)

Overrides java.lang.Object.equals.

Doc from java.lang.Object.equals.

Indicates whether some other object is "equal to" this one.

The equals method implements an equivalence relation on non-null object references:

  • It is reflexive: for any non-null reference value x, x.equals(x) should return true.
  • It is symmetric: for any non-null reference values x and y, x.equals(y) should return true if and only if y.equals(x) returns true.
  • It is transitive: for any non-null reference values x, y, and z, if x.equals(y) returns true and y.equals(z) returns true, then x.equals(z) should return true.
  • It is consistent: for any non-null reference values x and y, multiple invocations of x.equals(y) consistently return true or consistently return false, provided no information used in equals comparisons on the objects is modified.
  • For any non-null reference value x, x.equals(null) should return false.

An equivalence relation partitions the elements it operates on into equivalence classes; all the members of an equivalence class are equal to each other. Members of an equivalence class are substitutable for each other, at least for some purposes.

Annotations
@Override
fetchAttributeback to summary
private <T> T fetchAttribute(String name, Class<T> type)
getAttributeback to summary
public Object getAttribute(String attribute)
getAttributesback to summary
public AttributeList getAttributes(String[] attributes)
getChildrenback to summary
public AMXClient[] getChildren()

Implements org.glassfish.gmbal.AMXMBeanInterface.getChildren.

Doc from org.glassfish.gmbal.AMXMBeanInterface.getChildren.

Containment hierarchy: Get all AMXMBeanInterface contained by this one, in no particular order. Valid only if isContainer(). Note that using an array sidesteps Map/Set/OpenType issues

getMBeanInfoback to summary
public MBeanInfo getMBeanInfo()
getMetaback to summary
public Map<String, ?> getMeta()

Implements org.glassfish.gmbal.AMXMBeanInterface.getMeta.

Doc from org.glassfish.gmbal.AMXMBeanInterface.getMeta.

Get all metadata about this MBean.

getNameback to summary
public String getName()

Implements org.glassfish.gmbal.AMXMBeanInterface.getName.

Doc from org.glassfish.gmbal.AMXMBeanInterface.getName.

Usually the same as the ObjectName 'name' property, but can differ if the actual name contains characters that must be escaped for an ObjectName and/or if the MBean has a mutable name attribute. The type property can be obtained from the ObjectName

getParentback to summary
public AMXClient getParent()

Implements org.glassfish.gmbal.AMXMBeanInterface.getParent.

Doc from org.glassfish.gmbal.AMXMBeanInterface.getParent.

"go up one level": the MBean containing this one, can be null for root

hashCodeback to summary
public int hashCode()

Overrides java.lang.Object.hashCode.

Doc from java.lang.Object.hashCode.

Returns a hash code value for this object. This method is supported for the benefit of hash tables such as those provided by java.util.HashMap.

The general contract of hashCode is:

  • Whenever it is invoked on the same object more than once during an execution of a Java application, the hashCode method must consistently return the same integer, provided no information used in equals comparisons on the object is modified. This integer need not remain consistent from one execution of an application to another execution of the same application.
  • If two objects are equal according to the equals method, then calling the hashCode method on each of the two objects must produce the same integer result.
  • It is not required that if two objects are unequal according to the equals method, then calling the hashCode method on each of the two objects must produce distinct integer results. However, the programmer should be aware that producing distinct integer results for unequal objects may improve the performance of hash tables.
Annotations
@Override
invokeback to summary
public Object invoke(String actionName, Object[] params, String[] signature) throws MBeanException, ReflectionException
makeAMXback to summary
private AMXClient makeAMX(ObjectName on)
makeAMXArrayback to summary
private AMXClient[] makeAMXArray(ObjectName[] onames)
makeObjectNameback to summary
private static ObjectName makeObjectName(String str)
objectNameback to summary
public ObjectName objectName()
setAttributeback to summary
public void setAttribute(String name, Object value)
setAttributeback to summary
public void setAttribute(Attribute attribute)
setAttributesback to summary
public AttributeList setAttributes(AttributeList attributes)
toStringback to summary
public String toString()

Overrides java.lang.Object.toString.

Doc from java.lang.Object.toString.

Returns a string representation of the object. Satisfying this method's contract implies a non-null result must be returned.

Annotations
@Override