Class Notification

java.lang.Object
java.util.EventObject
javax.management.Notification
All Implemented Interfaces:
Serializable
Direct Known Subclasses:
AttributeChangeNotification, JMXConnectionNotification, MBeanServerNotification, MonitorNotification, RelationNotification, TimerNotification

public class Notification
extends EventObject

The Notification class represents a notification emitted by an MBean. It contains a reference to the source MBean: if the notification has been forwarded through the MBean server, and the original source of the notification was a reference to the emitting MBean object, then the MBean server replaces it by the MBean's ObjectName. If the listener has registered directly with the MBean, this is either the object name or a direct reference to the MBean.

It is strongly recommended that notification senders use the object name rather than a reference to the MBean object as the source.

The serialVersionUID of this class is -7516092053498031989L.

Since:
1.5
See Also:
Serialized Form
  • Field Details

    • source

      protected Object source

      This field hides the EventObject.source field in the parent class to make it non-transient and therefore part of the serialized form.

  • Constructor Details

    • Notification

      public Notification​(String type, Object source, long sequenceNumber)
      Creates a Notification object. The notification timeStamp is set to the current date.
      Parameters:
      type - The notification type.
      source - The notification source.
      sequenceNumber - The notification sequence number within the source object.
    • Notification

      public Notification​(String type, Object source, long sequenceNumber, String message)
      Creates a Notification object. The notification timeStamp is set to the current date.
      Parameters:
      type - The notification type.
      source - The notification source.
      sequenceNumber - The notification sequence number within the source object.
      message - The detailed message.
    • Notification

      public Notification​(String type, Object source, long sequenceNumber, long timeStamp)
      Creates a Notification object.
      Parameters:
      type - The notification type.
      source - The notification source.
      sequenceNumber - The notification sequence number within the source object.
      timeStamp - The notification emission date.
    • Notification

      public Notification​(String type, Object source, long sequenceNumber, long timeStamp, String message)
      Creates a Notification object.
      Parameters:
      type - The notification type.
      source - The notification source.
      sequenceNumber - The notification sequence number within the source object.
      timeStamp - The notification emission date.
      message - The detailed message.
  • Method Details

    • setSource

      public void setSource​(Object source)
      Sets the source.
      Parameters:
      source - the new source for this object.
      See Also:
      EventObject.getSource()
    • getSequenceNumber

      public long getSequenceNumber()
      Get the notification sequence number.
      Returns:
      The notification sequence number within the source object. It's a serial number identifying a particular instance of notification in the context of the notification source. The notification model does not assume that notifications will be received in the same order that they are sent. The sequence number helps listeners to sort received notifications.
      See Also:
      setSequenceNumber(long)
    • setSequenceNumber

      public void setSequenceNumber​(long sequenceNumber)
      Set the notification sequence number.
      Parameters:
      sequenceNumber - The notification sequence number within the source object. It is a serial number identifying a particular instance of notification in the context of the notification source.
      See Also:
      getSequenceNumber()
    • getType

      public String getType()
      Get the notification type.
      Returns:
      The notification type. It's a string expressed in a dot notation similar to Java properties. It is recommended that the notification type should follow the reverse-domain-name convention used by Java package names. An example of a notification type is com.example.alarm.router.
    • getTimeStamp

      public long getTimeStamp()
      Get the notification timestamp.
      Returns:
      The notification timestamp.
      See Also:
      setTimeStamp(long)
    • setTimeStamp

      public void setTimeStamp​(long timeStamp)
      Set the notification timestamp.
      Parameters:
      timeStamp - The notification timestamp. It indicates when the notification was generated.
      See Also:
      getTimeStamp()
    • getMessage

      public String getMessage()
      Get the notification message.
      Returns:
      The message string of this notification object.
    • getUserData

      public Object getUserData()
      Get the user data.
      Returns:
      The user data object. It is used for whatever data the notification source wishes to communicate to its consumers.
      See Also:
      setUserData(java.lang.Object)
    • setUserData

      public void setUserData​(Object userData)
      Set the user data.
      Parameters:
      userData - The user data object. It is used for whatever data the notification source wishes to communicate to its consumers.
      See Also:
      getUserData()
    • toString

      public String toString()
      Returns a String representation of this notification.
      Overrides:
      toString in class EventObject
      Returns:
      A String representation of this notification.