# Class ModelMBeanNotificationInfo

java.lang.Object
javax.management.MBeanFeatureInfo
javax.management.MBeanNotificationInfo
javax.management.modelmbean.ModelMBeanNotificationInfo

All Implemented Interfaces:
  `Serializable, Cloneable, DescriptorAccess, DescriptorRead`

public class ModelMBeanNotificationInfo extends MBeanNotificationInfo implements DescriptorAccess

The ModelMBeanNotificationInfo object describes a notification emitted by a ModelMBean. It is a subclass of MBeanNotificationInfo with the addition of an associated Descriptor and an implementation of the Descriptor interface.

The fields in the descriptor are defined, but not limited to, the following. Note that when the Type in this table is Number, a String that is the decimal representation of a Long can also be used.

ModelMBeanNotificationInfo Fields
Name | Type | Meaning
--- | --- | ---
name | String | Notification name.
descriptorType | String | Must be "notification".
severity | Number | 0-6 where 0: unknown; 1: non-recoverable; 2: critical, failure; 3: major, severe; 4: minor, marginal, error; 5: warning; 6: normal, cleared, informative
messageID | String | Unique key for message text (to allow translation, analysis).
messageText | String | Text of notification.
log | String | T - log message, F - do not log message.
logfile | String | fully qualified file name appropriate for operating system.
visibility | Number | 1-4 where 1: always visible 4: rarely visible.
presentationString | String | XML formatted string to allow presentation of data.

The default descriptor contains the name, descriptorType, displayName and severity(=6) fields. The default value of the name and displayName fields is the name of the Notification class (as specified by the `name` parameter of the ModelMBeanNotificationInfo constructor).

The serialVersionUID of this class is `-7445681389570207141L`.

Since:
  1.5
See Also:
  - Serialized Form

## Field Summary

### Fields declared in class MBeanFeatureInfo

`description, name`
Modifier and Type
Field
Description
`protected String`
`description`
The human-readable description of the feature.
`protected String`
`name`
The name of the feature.

## Constructor Summary

Constructors
Constructor
Description
`ModelMBeanNotificationInfo(String[] notifTypes, String name, String description)`
Constructs a ModelMBeanNotificationInfo object with a default descriptor.
`ModelMBeanNotificationInfo(String[] notifTypes, String name, String description, Descriptor descriptor)`
Constructs a ModelMBeanNotificationInfo object.
`ModelMBeanNotificationInfo(ModelMBeanNotificationInfo inInfo)`
Constructs a new ModelMBeanNotificationInfo object from this ModelMBeanNotfication Object.

## Method Summary

Modifier and Type
Method
Description
`Object`
`clone()`
Creates and returns a new ModelMBeanNotificationInfo which is a duplicate of this ModelMBeanNotificationInfo.
`Descriptor`
`getDescriptor()`
Returns a copy of the associated Descriptor for the ModelMBeanNotificationInfo.
`void`
`setDescriptor(Descriptor inDescriptor)`
Sets associated Descriptor (full replace) for the ModelMBeanNotificationInfo If the new Descriptor is null, then the associated Descriptor reverts to a default descriptor.
`String`
`toString()`
Returns a human readable string containing ModelMBeanNotificationInfo.

### Methods declared in class MBeanNotificationInfo

`equals, getNotifTypes`
Modifier and Type
Method
Description
`boolean`
`equals(Object o)`
Compare this MBeanNotificationInfo to another.
`String[]`
`getNotifTypes()`
Returns the array of strings (in dot notation) containing the notification types that the MBean may emit.

### Methods declared in class MBeanFeatureInfo

`getDescription, getName`
Modifier and Type
Method
Description
`String`
`getDescription()`
Returns the human-readable description of the feature.
`String`
`getName()`
Returns the name of the feature.

### Methods declared in class Object

`finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`
Modifier and Type
Method
Description
`protected void`
`finalize()`
Deprecated, for removal: This API element is subject to removal in a future version.
Finalization is deprecated and subject to removal in a future release.
`final Class<?>`
`getClass()`
Returns the runtime class of this `Object`.
`int`
`hashCode()`
Returns a hash code value for this object.
`final void`
`notify()`
Wakes up a single thread that is waiting on this object's monitor.
`final void`
`notifyAll()`
Wakes up all threads that are waiting on this object's monitor.
`final void`
`wait()`
Causes the current thread to wait until it is awakened, typically by being notified or interrupted.
`final void`
`wait(long timeoutMillis)`
Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.
`final void`
`wait(long timeoutMillis, int nanos)`
Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.

## Constructor Details

### ModelMBeanNotificationInfo

public ModelMBeanNotificationInfo(String[] notifTypes, String name, String description)
Constructs a ModelMBeanNotificationInfo object with a default descriptor.

Parameters:
  `notifTypes` - The array of strings (in dot notation) containing the notification types that may be emitted.
  `name` - The name of the Notification class.
  `description` - A human readable description of the Notification. Optional.

### ModelMBeanNotificationInfo

public ModelMBeanNotificationInfo(String[] notifTypes, String name, String description, Descriptor descriptor)
Constructs a ModelMBeanNotificationInfo object.

Parameters:
  `notifTypes` - The array of strings (in dot notation) containing the notification types that may be emitted.
  `name` - The name of the Notification class.
  `description` - A human readable description of the Notification. Optional.
  `descriptor` - An instance of Descriptor containing the appropriate metadata for this instance of the MBeanNotificationInfo. If it is null a default descriptor will be created. If the descriptor does not contain the fields "displayName" or "severity", the missing ones are added with their default values.
Throws:
  `RuntimeOperationsException` - Wraps an `IllegalArgumentException`. The descriptor is invalid, or descriptor field "name" is not equal to parameter name, or descriptor field "descriptorType" is not equal to "notification".

### ModelMBeanNotificationInfo

public ModelMBeanNotificationInfo(ModelMBeanNotificationInfo inInfo)
Constructs a new ModelMBeanNotificationInfo object from this ModelMBeanNotfication Object.

Parameters:
  `inInfo` - the ModelMBeanNotificationInfo to be duplicated

## Method Details

### clone

public Object clone()
Creates and returns a new ModelMBeanNotificationInfo which is a duplicate of this ModelMBeanNotificationInfo.

Overrides:
  `clone` in class `MBeanNotificationInfo`
Returns:
  a clone of this instance.
See Also:
  - `Cloneable`

### getDescriptor

public Descriptor getDescriptor()
Returns a copy of the associated Descriptor for the ModelMBeanNotificationInfo.

Specified by:
  `getDescriptor` in interface `DescriptorRead`
Overrides:
  `getDescriptor` in class `MBeanFeatureInfo`
Returns:
  Descriptor associated with the ModelMBeanNotificationInfo object.
See Also:
  - `setDescriptor(Descriptor)`

### setDescriptor

public void setDescriptor(Descriptor inDescriptor)
Sets associated Descriptor (full replace) for the ModelMBeanNotificationInfo If the new Descriptor is null, then the associated Descriptor reverts to a default descriptor. The Descriptor is validated before it is assigned. If the new Descriptor is invalid, then a RuntimeOperationsException wrapping an IllegalArgumentException is thrown.

Specified by:
  `setDescriptor` in interface `DescriptorAccess`
Parameters:
  `inDescriptor` - replaces the Descriptor associated with the ModelMBeanNotification interface
Throws:
  `RuntimeOperationsException` - Wraps an `IllegalArgumentException` for invalid Descriptor.
See Also:
  - `getDescriptor()`

### toString

public String toString()
Returns a human readable string containing ModelMBeanNotificationInfo.

Overrides:
  `toString` in class `Object`
Returns:
  a string describing this object.