ModelMBeanNotificationPublisher (Spring Framework 3.2.1.RELEASE API)
Date: 2013-01-24

org.springframework.jmx.export.notification

## Class ModelMBeanNotificationPublisher

- java.lang.Object
- - org.springframework.jmx.export.notification.ModelMBeanNotificationPublisher

- All Implemented Interfaces:
    NotificationPublisher

      public class ModelMBeanNotificationPublisher
      extends Object
      implements NotificationPublisher

  `NotificationPublisher` implementation that uses the infrastructure provided by the `ModelMBean` interface to track `javax.management.NotificationListeners` and send `Notifications` to those listeners.
  Since:
    2.0
  Author:
    Rob Harrop, Juergen Hoeller, Rick Evans
  See Also:
    `ModelMBeanNotificationBroadcaster`, `NotificationPublisherAware`

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `ModelMBeanNotificationPublisher(ModelMBeanNotificationBroadcaster modelMBean, ObjectName objectName, Object managedResource)` Create a new instance of the `ModelMBeanNotificationPublisher` class that will publish all `Notifications` to the supplied `ModelMBean`.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `sendNotification(Notification notification)` Send the supplied `Notification` using the wrapped `ModelMBean` instance.

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

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

- - ### Constructor Detail

    - #### ModelMBeanNotificationPublisher

          public ModelMBeanNotificationPublisher(ModelMBeanNotificationBroadcaster modelMBean,
                                         ObjectName objectName,
                                         Object managedResource)

      Create a new instance of the `ModelMBeanNotificationPublisher` class that will publish all `Notifications` to the supplied `ModelMBean`.
      Parameters:
        `modelMBean` - the target `ModelMBean`; must not be `null`
        `objectName` - the `ObjectName` of the source `ModelMBean`
        `managedResource` - the managed resource exposed by the supplied `ModelMBean`
      Throws:
        `IllegalArgumentException` - if any of the parameters is `null`

  - ### Method Detail

    - #### sendNotification

          public void sendNotification(Notification notification)

      Send the supplied `Notification` using the wrapped `ModelMBean` instance.
      Specified by:
        `sendNotification` in interface `NotificationPublisher`
      Parameters:
        `notification` - the `Notification` to be sent
      Throws:
        `IllegalArgumentException` - if the supplied `notification` is `null`
        `UnableToSendNotificationException` - if the supplied `notification` could not be sent