java.lang.Object
java.util.EventObject
javax.management.Notification
javax.management.relation.RelationNotification
- All Implemented Interfaces:
Serializable
public class RelationNotification extends Notification
A notification of a change in the Relation Service.
A RelationNotification notification is sent when a relation is created via
the Relation Service, or an MBean is added as a relation in the Relation
Service, or a role is updated in a relation, or a relation is removed from
the Relation Service.
The serialVersionUID of this class is -6871117877523310399L
.
- Since:
- 1.5
- See Also:
- Serialized Form
-
Field Summary
Fields Modifier and Type Field Description static String
RELATION_BASIC_CREATION
Type for the creation of an internal relation.static String
RELATION_BASIC_REMOVAL
Type for the removal from the Relation Service of an internal relation.static String
RELATION_BASIC_UPDATE
Type for an update of an internal relation.static String
RELATION_MBEAN_CREATION
Type for the relation MBean added into the Relation Service.static String
RELATION_MBEAN_REMOVAL
Type for the removal from the Relation Service of a relation MBean.static String
RELATION_MBEAN_UPDATE
Type for the update of a relation MBean. -
Constructor Summary
Constructors Constructor Description RelationNotification(String notifType, Object sourceObj, long sequence, long timeStamp, String message, String id, String typeName, ObjectName objectName, String name, List<ObjectName> newValue, List<ObjectName> oldValue)
Creates a notification for a role update in a relation.RelationNotification(String notifType, Object sourceObj, long sequence, long timeStamp, String message, String id, String typeName, ObjectName objectName, List<ObjectName> unregMBeanList)
Creates a notification for either a relation creation (RelationSupport object created internally in the Relation Service, or an MBean added as a relation) or for a relation removal from the Relation Service. -
Method Summary
Modifier and Type Method Description List<ObjectName>
getMBeansToUnregister()
Returns the list of ObjectNames of MBeans expected to be unregistered due to a relation removal (only for relation removal).List<ObjectName>
getNewRoleValue()
Returns new value of updated role (only for role update).ObjectName
getObjectName()
Returns the ObjectName of the created/removed/updated relation.List<ObjectName>
getOldRoleValue()
Returns old value of updated role (only for role update).String
getRelationId()
Returns the relation identifier of created/removed/updated relation.String
getRelationTypeName()
Returns the relation type name of created/removed/updated relation.String
getRoleName()
Returns name of updated role of updated relation (only for role update).Methods declared in class javax.management.Notification
getMessage, getSequenceNumber, getTimeStamp, getType, getUserData, setSequenceNumber, setSource, setTimeStamp, setUserData, toString
-
Field Details
-
RELATION_BASIC_CREATION
Type for the creation of an internal relation.- See Also:
- Constant Field Values
-
RELATION_MBEAN_CREATION
Type for the relation MBean added into the Relation Service.- See Also:
- Constant Field Values
-
RELATION_BASIC_UPDATE
Type for an update of an internal relation.- See Also:
- Constant Field Values
-
RELATION_MBEAN_UPDATE
Type for the update of a relation MBean.- See Also:
- Constant Field Values
-
RELATION_BASIC_REMOVAL
Type for the removal from the Relation Service of an internal relation.- See Also:
- Constant Field Values
-
RELATION_MBEAN_REMOVAL
Type for the removal from the Relation Service of a relation MBean.- See Also:
- Constant Field Values
-
-
Constructor Details
-
RelationNotification
public RelationNotification(String notifType, Object sourceObj, long sequence, long timeStamp, String message, String id, String typeName, ObjectName objectName, List<ObjectName> unregMBeanList) throws IllegalArgumentExceptionCreates a notification for either a relation creation (RelationSupport object created internally in the Relation Service, or an MBean added as a relation) or for a relation removal from the Relation Service.- Parameters:
notifType
- type of the notification; either:- RELATION_BASIC_CREATION
- RELATION_MBEAN_CREATION
- RELATION_BASIC_REMOVAL
- RELATION_MBEAN_REMOVAL
sourceObj
- source object, sending the notification. This is either an ObjectName or a RelationService object. In the latter case it must be the MBean emitting the notification; the MBean Server will rewrite the source to be the ObjectName under which that MBean is registered.sequence
- sequence number to identify the notificationtimeStamp
- time stampmessage
- human-readable message describing the notificationid
- relation id identifying the relation in the Relation ServicetypeName
- name of the relation typeobjectName
- ObjectName of the relation object if it is an MBean (null for relations internally handled by the Relation Service)unregMBeanList
- list of ObjectNames of referenced MBeans expected to be unregistered due to relation removal (only for removal, due to CIM qualifiers, can be null)- Throws:
IllegalArgumentException
- if:- no value for the notification type
- the notification type is not RELATION_BASIC_CREATION, RELATION_MBEAN_CREATION, RELATION_BASIC_REMOVAL or RELATION_MBEAN_REMOVAL
- no source object
- the source object is not a Relation Service
- no relation id
- no relation type name
-
RelationNotification
public RelationNotification(String notifType, Object sourceObj, long sequence, long timeStamp, String message, String id, String typeName, ObjectName objectName, String name, List<ObjectName> newValue, List<ObjectName> oldValue) throws IllegalArgumentExceptionCreates a notification for a role update in a relation.- Parameters:
notifType
- type of the notification; either:- RELATION_BASIC_UPDATE
- RELATION_MBEAN_UPDATE
sourceObj
- source object, sending the notification. This is either an ObjectName or a RelationService object. In the latter case it must be the MBean emitting the notification; the MBean Server will rewrite the source to be the ObjectName under which that MBean is registered.sequence
- sequence number to identify the notificationtimeStamp
- time stampmessage
- human-readable message describing the notificationid
- relation id identifying the relation in the Relation ServicetypeName
- name of the relation typeobjectName
- ObjectName of the relation object if it is an MBean (null for relations internally handled by the Relation Service)name
- name of the updated rolenewValue
- new role value (List of ObjectName objects)oldValue
- old role value (List of ObjectName objects)- Throws:
IllegalArgumentException
- if null parameter
-
-
Method Details
-
getRelationId
Returns the relation identifier of created/removed/updated relation.- Returns:
- the relation id.
-
getRelationTypeName
Returns the relation type name of created/removed/updated relation.- Returns:
- the relation type name.
-
getObjectName
Returns the ObjectName of the created/removed/updated relation.- Returns:
- the ObjectName if the relation is an MBean, otherwise null.
-
getMBeansToUnregister
Returns the list of ObjectNames of MBeans expected to be unregistered due to a relation removal (only for relation removal).- Returns:
- a
List
ofObjectName
.
-
getRoleName
Returns name of updated role of updated relation (only for role update).- Returns:
- the name of the updated role.
-
getOldRoleValue
Returns old value of updated role (only for role update).- Returns:
- the old value of the updated role.
-
getNewRoleValue
Returns new value of updated role (only for role update).- Returns:
- the new value of the updated role.
-