org.springframework.jmx.export.notification
Class ModelMBeanNotificationPublisher

java.lang.Object
  extended by 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
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
 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