org.springframework.jmx.export.metadata

## Interface JmxAttributeSource

All Known Implementing Classes:
  AnnotationJmxAttributeSource

    public interface JmxAttributeSource

Interface used by the `MetadataMBeanInfoAssembler` to read source-level metadata from a managed resource's class.

Since:
  1.2
Author:
  Rob Harrop, Jennifer Hickey
See Also:
  `MetadataMBeanInfoAssembler.setAttributeSource(org.springframework.jmx.export.metadata.JmxAttributeSource)`, `MBeanExporter.setAssembler(org.springframework.jmx.export.assembler.MBeanInfoAssembler)`

### Method Summary

Methods
`ManagedAttribute` `getManagedAttribute(Method method)` Implementations should return an instance of `ManagedAttribute` if the supplied `Method` has the corresponding metadata.
`ManagedMetric` `getManagedMetric(Method method)` Implementations should return an instance of `ManagedMetric` if the supplied `Method` has the corresponding metadata.
`ManagedNotification[]` `getManagedNotifications(Class<?> clazz)` Implementations should return an array of `ManagedNotifications` if the supplied the `Class` has the corresponding metadata.
`ManagedOperation` `getManagedOperation(Method method)` Implementations should return an instance of `ManagedOperation` if the supplied `Method` has the corresponding metadata.
`ManagedOperationParameter[]` `getManagedOperationParameters(Method method)` Implementations should return an array of `ManagedOperationParameter` if the supplied `Method` has the corresponding metadata.
`ManagedResource` `getManagedResource(Class<?> clazz)` Implementations should return an instance of `ManagedResource` if the supplied `Class` has the appropriate metadata.

### Method Detail

#### getManagedResource

    ManagedResource getManagedResource(Class<?> clazz)
                                       throws InvalidMetadataException

Implementations should return an instance of `ManagedResource` if the supplied `Class` has the appropriate metadata. Otherwise should return `null`.

Parameters:
  `clazz` - the class to read the attribute data from
Returns:
  the attribute, or `null` if not found
Throws:
  `InvalidMetadataException` - in case of invalid attributes

#### getManagedAttribute

    ManagedAttribute getManagedAttribute(Method method)
                                         throws InvalidMetadataException

Implementations should return an instance of `ManagedAttribute` if the supplied `Method` has the corresponding metadata. Otherwise should return `null`.

Parameters:
  `method` - the method to read the attribute data from
Returns:
  the attribute, or `null` if not found
Throws:
  `InvalidMetadataException` - in case of invalid attributes

#### getManagedMetric

    ManagedMetric getManagedMetric(Method method)
                                   throws InvalidMetadataException

Implementations should return an instance of `ManagedMetric` if the supplied `Method` has the corresponding metadata. Otherwise should return `null`.

Parameters:
  `method` - the method to read the attribute data from
Returns:
  the metric, or `null` if not found
Throws:
  `InvalidMetadataException` - in case of invalid attributes

#### getManagedOperation

    ManagedOperation getManagedOperation(Method method)
                                         throws InvalidMetadataException

Implementations should return an instance of `ManagedOperation` if the supplied `Method` has the corresponding metadata. Otherwise should return `null`.

Parameters:
  `method` - the method to read the attribute data from
Returns:
  the attribute, or `null` if not found
Throws:
  `InvalidMetadataException` - in case of invalid attributes

#### getManagedOperationParameters

    ManagedOperationParameter[] getManagedOperationParameters(Method method)
                                                              throws InvalidMetadataException

Implementations should return an array of `ManagedOperationParameter` if the supplied `Method` has the corresponding metadata. Otherwise should return an empty array if no metadata is found.

Parameters:
  `method` - the `Method` to read the metadata from
Returns:
  the parameter information.
Throws:
  `InvalidMetadataException` - in the case of invalid attributes.

#### getManagedNotifications

    ManagedNotification[] getManagedNotifications(Class<?> clazz)
                                                  throws InvalidMetadataException

Implementations should return an array of `ManagedNotifications` if the supplied the `Class` has the corresponding metadata. Otherwise should return an empty array.

Parameters:
  `clazz` - the `Class` to read the metadata from
Returns:
  the notification information
Throws:
  `InvalidMetadataException` - in the case of invalid metadata