Package org.apache.tomcat.util.modeler

## Class ManagedBean

- java.lang.Object
- - org.apache.tomcat.util.modeler.ManagedBean

- All Implemented Interfaces:
    `java.io.Serializable`

      public class ManagedBean
      extends java.lang.Object
      implements java.io.Serializable

  Internal configuration information for a managed bean (MBean) descriptor.

  Author:
    Craig R. McClanahan
  See Also:
    Serialized Form

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `protected java.lang.String` | `className` |
    `protected java.lang.String` | `description` |
    `protected java.lang.String` | `domain` |
    `protected java.lang.String` | `group` |
    `protected java.lang.String` | `name` |
    `protected java.lang.String` | `type` |

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `ManagedBean()` | Constructor.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `addAttribute​(AttributeInfo attribute)` | Add a new attribute to the set of attributes for this MBean.
    `void` | `addNotification​(NotificationInfo notification)` | Add a new notification to the set of notifications for this MBean.
    `void` | `addOperation​(OperationInfo operation)` | Add a new operation to the set of operations for this MBean.
    `javax.management.DynamicMBean` | `createMBean​(java.lang.Object instance)` | Create and return a `ModelMBean` that has been preconfigured with the `ModelMBeanInfo` information for this managed bean, and is associated with the specified managed object instance.
    `AttributeInfo[]` | `getAttributes()` |
    `java.lang.String` | `getClassName()` | The fully qualified name of the Java class of the MBean described by this descriptor.
    `java.lang.String` | `getDescription()` |
    `java.lang.String` | `getDomain()` |
    `java.lang.String` | `getGroup()` |
    `java.lang.reflect.Method` | `getInvoke​(java.lang.String aname, java.lang.Object[] params, java.lang.String[] signature, BaseModelMBean bean, java.lang.Object resource)` |
    `java.lang.String` | `getName()` |
    `NotificationInfo[]` | `getNotifications()` |
    `OperationInfo[]` | `getOperations()` |
    `java.lang.reflect.Method` | `getSetter​(java.lang.String aname, BaseModelMBean bean, java.lang.Object resource)` |
    `java.lang.String` | `getType()` |
    `void` | `setClassName​(java.lang.String className)` |
    `void` | `setDescription​(java.lang.String description)` |
    `void` | `setDomain​(java.lang.String domain)` |
    `void` | `setGroup​(java.lang.String group)` |
    `void` | `setName​(java.lang.String name)` |
    `void` | `setType​(java.lang.String type)` |
    `java.lang.String` | `toString()` | Return a string representation of this managed bean.

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

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

- - ### Field Detail

    - #### className

          protected java.lang.String className

    - #### description

          protected java.lang.String description

    - #### domain

          protected java.lang.String domain

    - #### group

          protected java.lang.String group

    - #### name

          protected java.lang.String name

    - #### type

          protected java.lang.String type

  - ### Constructor Detail

    - #### ManagedBean

          public ManagedBean()

      Constructor. Will add default attributes.

  - ### Method Detail

    - #### getAttributes

          public AttributeInfo[] getAttributes()

      Returns:
        the collection of attributes for this MBean.

    - #### getClassName

          public java.lang.String getClassName()

      The fully qualified name of the Java class of the MBean described by this descriptor. If not specified, the standard JMX class (`javax.management.modelmbean.RequiredModeLMBean`) will be utilized.
      Returns:
        the class name

    - #### setClassName

          public void setClassName​(java.lang.String className)

    - #### getDescription

          public java.lang.String getDescription()

      Returns:
        the human-readable description of this MBean.

    - #### setDescription

          public void setDescription​(java.lang.String description)

    - #### getDomain

          public java.lang.String getDomain()

      Returns:
        the (optional) `ObjectName` domain in which this MBean should be registered in the MBeanServer.

    - #### setDomain

          public void setDomain​(java.lang.String domain)

    - #### getGroup

          public java.lang.String getGroup()

      Returns:
        the (optional) group to which this MBean belongs.

    - #### setGroup

          public void setGroup​(java.lang.String group)

    - #### getName

          public java.lang.String getName()

      Returns:
        the name of this managed bean, which must be unique among all MBeans managed by a particular MBeans server.

    - #### setName

          public void setName​(java.lang.String name)

    - #### getNotifications

          public NotificationInfo[] getNotifications()

      Returns:
        the collection of notifications for this MBean.

    - #### getOperations

          public OperationInfo[] getOperations()

      Returns:
        the collection of operations for this MBean.

    - #### getType

          public java.lang.String getType()

      Returns:
        the fully qualified name of the Java class of the resource implementation class described by the managed bean described by this descriptor.

    - #### setType

          public void setType​(java.lang.String type)

    - #### addAttribute

          public void addAttribute​(AttributeInfo attribute)

      Add a new attribute to the set of attributes for this MBean.
      Parameters:
        `attribute` - The new attribute descriptor

    - #### addNotification

          public void addNotification​(NotificationInfo notification)

      Add a new notification to the set of notifications for this MBean.
      Parameters:
        `notification` - The new notification descriptor

    - #### addOperation

          public void addOperation​(OperationInfo operation)

      Add a new operation to the set of operations for this MBean.
      Parameters:
        `operation` - The new operation descriptor

    - #### createMBean

          public javax.management.DynamicMBean createMBean​(java.lang.Object instance)
                                                    throws javax.management.InstanceNotFoundException,
                                                           javax.management.MBeanException,
                                                           javax.management.RuntimeOperationsException

      Create and return a `ModelMBean` that has been preconfigured with the `ModelMBeanInfo` information for this managed bean, and is associated with the specified managed object instance. The returned `ModelMBean` will NOT have been registered with our `MBeanServer`.
      Parameters:
        `instance` - Instanced of the managed object, or `null` for no associated instance
      Returns:
        the MBean
      Throws:
        `javax.management.InstanceNotFoundException` - if the managed resource object cannot be found
        `javax.management.MBeanException` - if a problem occurs instantiating the `ModelMBean` instance
        `javax.management.RuntimeOperationsException` - if a JMX runtime error occurs

    - #### toString

          public java.lang.String toString()

      Return a string representation of this managed bean.
      Overrides:
        `toString` in class `java.lang.Object`

    - #### getSetter

          public java.lang.reflect.Method getSetter​(java.lang.String aname,
                                                    BaseModelMBean bean,
                                                    java.lang.Object resource)
                                             throws javax.management.AttributeNotFoundException,
                                                    javax.management.ReflectionException

      Throws:
        `javax.management.AttributeNotFoundException`
        `javax.management.ReflectionException`

    - #### getInvoke

          public java.lang.reflect.Method getInvoke​(java.lang.String aname,
                                                    java.lang.Object[] params,
                                                    java.lang.String[] signature,
                                                    BaseModelMBean bean,
                                                    java.lang.Object resource)
                                             throws javax.management.MBeanException,
                                                    javax.management.ReflectionException

      Throws:
        `javax.management.MBeanException`
        `javax.management.ReflectionException`