org.springframework.jmx.export.assembler

## Class AbstractConfigurableMBeanInfoAssembler

- java.lang.Object
- - org.springframework.jmx.export.assembler.AbstractMBeanInfoAssembler
  - - org.springframework.jmx.export.assembler.AbstractReflectiveMBeanInfoAssembler
    - - org.springframework.jmx.export.assembler.AbstractConfigurableMBeanInfoAssembler

- All Implemented Interfaces:
    MBeanInfoAssembler
  Direct Known Subclasses:
    InterfaceBasedMBeanInfoAssembler, MethodExclusionMBeanInfoAssembler, MethodNameBasedMBeanInfoAssembler, SimpleReflectiveMBeanInfoAssembler

      public abstract class AbstractConfigurableMBeanInfoAssembler
      extends AbstractReflectiveMBeanInfoAssembler

  Base class for MBeanInfoAssemblers that support configurable JMX notification behavior.
  Since:
    2.0
  Author:
    Rob Harrop, Juergen Hoeller

- - ### Field Summary

    - ### Fields inherited from class org.springframework.jmx.export.assembler.AbstractReflectiveMBeanInfoAssembler

      `ATTRIBUTE_OPERATION_VISIBILITY, FIELD_CLASS, FIELD_CURRENCY_TIME_LIMIT, FIELD_DEFAULT, FIELD_DISPLAY_NAME, FIELD_GET_METHOD, FIELD_LOG, FIELD_LOG_FILE, FIELD_METRIC_CATEGORY, FIELD_METRIC_TYPE, FIELD_PERSIST_LOCATION, FIELD_PERSIST_NAME, FIELD_PERSIST_PERIOD, FIELD_PERSIST_POLICY, FIELD_ROLE, FIELD_SET_METHOD, FIELD_UNITS, FIELD_VISIBILITY, ROLE_GETTER, ROLE_OPERATION, ROLE_SETTER`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `AbstractConfigurableMBeanInfoAssembler()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected ModelMBeanNotificationInfo[]` | `getNotificationInfo(Object managedBean, String beanKey)` Get the notification metadata for the MBean resource.
    `void` | `setNotificationInfoMappings(Map<String,Object> notificationInfoMappings)`
    `void` | `setNotificationInfos(ManagedNotification[] notificationInfos)`

    - ### Methods inherited from class org.springframework.jmx.export.assembler.AbstractReflectiveMBeanInfoAssembler

      `applyCurrencyTimeLimit, applyDefaultCurrencyTimeLimit, createModelMBeanOperationInfo, getAttributeDescription, getAttributeInfo, getClassForDescriptor, getDefaultCurrencyTimeLimit, getOperationDescription, getOperationInfo, getOperationParameters, getParameterNameDiscoverer, includeOperation, includeReadAttribute, includeWriteAttribute, isExposeClassDescriptor, isUseStrictCasing, populateAttributeDescriptor, populateMBeanDescriptor, populateOperationDescriptor, setDefaultCurrencyTimeLimit, setExposeClassDescriptor, setParameterNameDiscoverer, setUseStrictCasing`

    - ### Methods inherited from class org.springframework.jmx.export.assembler.AbstractMBeanInfoAssembler

      `checkManagedBean, getClassName, getClassToExpose, getClassToExpose, getConstructorInfo, getDescription, getMBeanInfo, getTargetClass`

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

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

- - ### Constructor Detail

    - #### AbstractConfigurableMBeanInfoAssembler

          public AbstractConfigurableMBeanInfoAssembler()

  - ### Method Detail

    - #### setNotificationInfos

          public void setNotificationInfos(ManagedNotification[] notificationInfos)

    - #### setNotificationInfoMappings

          public void setNotificationInfoMappings(Map<String,Object> notificationInfoMappings)

    - #### getNotificationInfo

          protected ModelMBeanNotificationInfo[] getNotificationInfo(Object managedBean,
                                                         String beanKey)

      Description copied from class: `AbstractMBeanInfoAssembler`
      Get the notification metadata for the MBean resource. Subclasses should implement this method to return the appropriate metadata for all notifications that should be exposed in the management interface for the managed resource.

      Default implementation returns an empty array of `ModelMBeanNotificationInfo`.

      Overrides:
        `getNotificationInfo` in class `AbstractMBeanInfoAssembler`
      Parameters:
        `managedBean` - the bean instance (might be an AOP proxy)
        `beanKey` - the key associated with the MBean in the beans map of the `MBeanExporter`
      Returns:
        the notification metadata