Package org.springframework.jmx.export.annotation

# Class AnnotationJmxAttributeSource

java.lang.Object
org.springframework.jmx.export.annotation.AnnotationJmxAttributeSource

All Implemented Interfaces:
  `org.springframework.beans.factory.Aware`, `org.springframework.beans.factory.BeanFactoryAware`, `JmxAttributeSource`

public class AnnotationJmxAttributeSource extends Object implements JmxAttributeSource, org.springframework.beans.factory.BeanFactoryAware
Implementation of the `JmxAttributeSource` interface that reads annotations and exposes the corresponding attributes.

Since:
  1.2
Author:
  Rob Harrop, Juergen Hoeller, Jennifer Hickey, Stephane Nicoll
See Also:
  - `ManagedResource`
  - `ManagedAttribute`
  - `ManagedOperation`

## Constructor Summary

Constructors
Constructor
Description
`AnnotationJmxAttributeSource()`

## Method Summary

Modifier and Type
Method
Description
`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 `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<?> beanClass)`
Implementations should return an instance of `ManagedResource` if the supplied `Class` has the appropriate metadata.
`void`
`setBeanFactory(org.springframework.beans.factory.BeanFactory beanFactory)`

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

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

## Constructor Details

### AnnotationJmxAttributeSource

public AnnotationJmxAttributeSource()

## Method Details

### setBeanFactory

public void setBeanFactory(org.springframework.beans.factory.BeanFactory beanFactory)

Specified by:
  `setBeanFactory` in interface `org.springframework.beans.factory.BeanFactoryAware`

### getManagedResource

@Nullable public ManagedResource getManagedResource(Class<?> beanClass) throws InvalidMetadataException
Description copied from interface: `JmxAttributeSource`
Implementations should return an instance of `ManagedResource` if the supplied `Class` has the appropriate metadata. Otherwise, should return `null`.

Specified by:
  `getManagedResource` in interface `JmxAttributeSource`
Parameters:
  `beanClass` - the class to read the attribute data from
Returns:
  the attribute, or `null` if not found
Throws:
  `InvalidMetadataException` - in case of invalid attributes

### getManagedAttribute

@Nullable public ManagedAttribute getManagedAttribute(Method method) throws InvalidMetadataException
Description copied from interface: `JmxAttributeSource`
Implementations should return an instance of `ManagedAttribute` if the supplied `Method` has the corresponding metadata. Otherwise, should return `null`.

Specified by:
  `getManagedAttribute` in interface `JmxAttributeSource`
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

@Nullable public ManagedMetric getManagedMetric(Method method) throws InvalidMetadataException
Description copied from interface: `JmxAttributeSource`
Implementations should return an instance of `ManagedMetric` if the supplied `Method` has the corresponding metadata. Otherwise, should return `null`.

Specified by:
  `getManagedMetric` in interface `JmxAttributeSource`
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

@Nullable public ManagedOperation getManagedOperation(Method method) throws InvalidMetadataException
Description copied from interface: `JmxAttributeSource`
Implementations should return an instance of `ManagedOperation` if the supplied `Method` has the corresponding metadata. Otherwise, should return `null`.

Specified by:
  `getManagedOperation` in interface `JmxAttributeSource`
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

public ManagedOperationParameter[] getManagedOperationParameters(Method method) throws InvalidMetadataException
Description copied from interface: `JmxAttributeSource`
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.

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

### getManagedNotifications

public ManagedNotification[] getManagedNotifications(Class<?> clazz) throws InvalidMetadataException
Description copied from interface: `JmxAttributeSource`
Implementations should return an array of `ManagedNotifications` if the supplied `Class` has the corresponding metadata. Otherwise, should return an empty array.

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