Package groovy.jmx

# Class GroovyMBean

java.lang.Object
groovy.lang.GroovyObjectSupport
groovy.jmx.GroovyMBean

All Implemented Interfaces:
  `GroovyObject`

    public class GroovyMBean
    extends GroovyObjectSupport

A GroovyObject facade for an underlying MBean which acts like a normal groovy object but which is actually implemented via an underlying JMX MBean. Properties and normal method invocations delegate to the MBeanServer to the actual MBean.

- ## Constructor Summary

  Constructors
  Constructor | Description
  --- | ---
  `GroovyMBean​(MBeanServerConnection server, String objectName)` |
  `GroovyMBean​(MBeanServerConnection server, String objectName, boolean ignoreErrors)` |
  `GroovyMBean​(MBeanServerConnection server, ObjectName name)` |
  `GroovyMBean​(MBeanServerConnection server, ObjectName name, boolean ignoreErrors)` |

- ## Method Summary

  Modifier and Type | Method | Description
  --- | --- | ---
  `protected String` | `createOperationKey​(String operation, int params)` | Construct a simple key based on the method name and the number of parameters
  `protected String[]` | `createSignature​(MBeanOperationInfo info)` |
  `String` | `describeAttribute​(String attributeName)` | Description of the specified attribute name.
  `protected String` | `describeAttribute​(MBeanAttributeInfo attr)` | Description of the specified attribute name.
  `List<String>` | `describeOperation​(String operationName)` | Get the description of the specified operation.
  `protected String` | `describeOperation​(MBeanOperationInfo operation)` | Description of the operation.
  `Object` | `getProperty​(String property)` | Retrieves a property value.
  `MBeanInfo` | `info()` |
  `Object` | `invokeMethod​(String method, Object arguments)` | Invokes the given method.
  `Collection<String>` | `listAttributeDescriptions()` | List of string representations of all of the attributes on the MBean.
  `Collection<String>` | `listAttributeNames()` | List of the names of each of the attributes on the MBean
  `List<String>` | `listAttributeValues()` | The values of each of the attributes on the MBean
  `Collection<String>` | `listOperationDescriptions()` | Description of all of the operations available on the MBean.
  `Collection<String>` | `listOperationNames()` | Names of all the operations available on the MBean.
  `ObjectName` | `name()` |
  `MBeanServerConnection` | `server()` |
  `void` | `setProperty​(String property, Object value)` | Sets the given property to the new value.
  `String` | `toString()` | Return an end user readable representation of the underlying MBean

  ### Methods inherited from class groovy.lang.GroovyObjectSupport

  `getMetaClass, setMetaClass`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- ## Constructor Details

  - ### GroovyMBean

    public GroovyMBean​(MBeanServerConnection server, String objectName) throws JMException, IOException
    Throws:
      `JMException`
      `IOException`

  - ### GroovyMBean

    public GroovyMBean​(MBeanServerConnection server, String objectName, boolean ignoreErrors) throws JMException, IOException
    Throws:
      `JMException`
      `IOException`

  - ### GroovyMBean

    public GroovyMBean​(MBeanServerConnection server, ObjectName name) throws JMException, IOException
    Throws:
      `JMException`
      `IOException`

  - ### GroovyMBean

    public GroovyMBean​(MBeanServerConnection server, ObjectName name, boolean ignoreErrors) throws JMException, IOException
    Throws:
      `JMException`
      `IOException`

- ## Method Details

  - ### server

    public MBeanServerConnection server()

  - ### name

    public ObjectName name()

  - ### info

    public MBeanInfo info()

  - ### getProperty

    public Object getProperty​(String property)
    Description copied from interface: `GroovyObject`
    Retrieves a property value.
    Parameters:
      `property` - the name of the property of interest
    Returns:
      the given property

  - ### setProperty

    public void setProperty​(String property, Object value)
    Description copied from interface: `GroovyObject`
    Sets the given property to the new value.
    Parameters:
      `property` - the name of the property of interest
      `value` - the new value for the property

  - ### invokeMethod

    public Object invokeMethod​(String method, Object arguments)
    Description copied from interface: `GroovyObject`
    Invokes the given method.
    Parameters:
      `method` - the name of the method to call
      `arguments` - the arguments to use for the method call
    Returns:
      the result of invoking the method

  - ### createSignature

    protected String[] createSignature​(MBeanOperationInfo info)

  - ### createOperationKey

    protected String createOperationKey​(String operation, int params)
    Construct a simple key based on the method name and the number of parameters
    Parameters:
      `operation` - - the mbean operation name
      `params` - - the number of parameters the operation supports
    Returns:
      simple unique identifier for a method

  - ### listAttributeNames

    public Collection<String> listAttributeNames()
    List of the names of each of the attributes on the MBean
    Returns:
      list of attribute names

  - ### listAttributeValues

    public List<String> listAttributeValues()
    The values of each of the attributes on the MBean
    Returns:
      list of values of each attribute

  - ### listAttributeDescriptions

    public Collection<String> listAttributeDescriptions()
    List of string representations of all of the attributes on the MBean.
    Returns:
      list of descriptions of each attribute on the mbean

  - ### describeAttribute

    protected String describeAttribute​(MBeanAttributeInfo attr)
    Description of the specified attribute name.
    Parameters:
      `attr` - - the attribute
    Returns:
      String the description

  - ### describeAttribute

    public String describeAttribute​(String attributeName)
    Description of the specified attribute name.
    Parameters:
      `attributeName` - - stringified name of the attribute
    Returns:
      the description

  - ### listOperationNames

    public Collection<String> listOperationNames()
    Names of all the operations available on the MBean.
    Returns:
      all the operations on the MBean

  - ### listOperationDescriptions

    public Collection<String> listOperationDescriptions()
    Description of all of the operations available on the MBean.
    Returns:
      full description of each operation on the MBean

  - ### describeOperation

    public List<String> describeOperation​(String operationName)
    Get the description of the specified operation. This returns a Collection since operations can be overloaded and one operationName can have multiple forms.
    Parameters:
      `operationName` - the name of the operation to describe
    Returns:
      Collection of operation description

  - ### describeOperation

    protected String describeOperation​(MBeanOperationInfo operation)
    Description of the operation.
    Parameters:
      `operation` - the operation to describe
    Returns:
      pretty-printed description

  - ### toString

    public String toString()
    Return an end user readable representation of the underlying MBean
    Overrides:
      `toString` in class `Object`
    Returns:
      the user readable description