Package 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
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

Modifier and Type
Method
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 Details

### 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 Details

### 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