javax.slee.usage
Interface UsageNotificationManagerMBean


public interface UsageNotificationManagerMBean

The UsageNotificationManagerMBean interface defines the basic common functionality required for the management of usage notifications.

The base JMX Object Name of a UsageNotificationManagerMBean object is specified by the BASE_OBJECT_NAME constant. The NOTIFICATION_SOURCE_KEY constant specifies the Object Name property that identifies the type of the notification source for the Usage Notification Manager MBean. In addition to this property, each notification source includes additional properties in the Usage Notification Manager MBean Object Name with the property keys indicated below:

A management client may obtain the complete Object Name of a Usage Notification Manager MBean for an SBB via the ServiceUsageMBean interface. The complete Object Name of a Usage Notification Manager MBean for a resource adaptor entity may be obtained using the ResourceManagementMBean interface. The complete Object Name of a Usage Notification Manager MBean for a SLEE internal component or subsystem may be obtained using the SleeManagementMBean interface.

Interface extension
During deployment of a SLEE component that defines a usage parameters interface, the UsageNotificationManagerMBean interface is extended to provide access to managed attributes that allow the generation of usage notifications for each usage parameter to be enabled or disabled. For each usage parameter defined in the usage parameters interface, a read-write managed attribute is added to this interface with the following method signatures:

where

Usage notifications are enabled or disabled on a per-usage-parameter basis for each notification source, ie. the SLEE does not take into consideration a specific usage parameter set when deciding whether or not usage notifications are enabled for a particular usage parameter. That means that if usage notifications are enabled for a particular usage parameter, if that usage parameter is updated in any usage parameter set belonging to the notification source, a usage notification will be generated by the SLEE. Ideally, usage notification generation should only be enabled for usage parameters that require a management client (or notification filter) to be kept constantly up-to-date with the status of the usage parameter. For other cases, the current value of a usage parameter can always be obtained by a management client by interacting with the UsageMBean for the usage parameter set.

Initial State of NotificationsEnabled Flags
In order to maintain backwards compatibility with existing management clients, a UsageNotificationManagerMBean that is generated by the SLEE for an SBB that is installed using a SLEE 1.0 deployment descriptor (as determined by the deployment descriptor's DOCTYPE declaration) defaults to having usage notifications enabled for all usage parameters.

A UsageNotificationManagerMBean that is generated by the SLEE for an SBB or resource adaptor that is installed using a SLEE 1.1 deployment descriptor defaults to having usage notifications disabled for all usage parameters, unless an explicit declaration is made in the deployment descriptor to enable notifications for specific usage parameters.

Since:
SLEE 1.1

Field Summary
static java.lang.String BASE_OBJECT_NAME
          The base JMX Object Name string of all SLEE Usage Notification Manager MBeans.
static java.lang.String NOTIFICATION_SOURCE_KEY
          The JMX Object Name property key that identifies the type of the notification source that the Usage Notification Manager MBean is managing usage notification generation for.
 
Method Summary
 void close()
          Notify the SLEE that the Usage Notification Manager MBean is no longer required by the management client.
 NotificationSource getNotificationSource()
          Get the notification source that this Usage Notification Manager MBean is managing usage notification enabler flags for.
 

Field Detail

BASE_OBJECT_NAME

static final java.lang.String BASE_OBJECT_NAME
The base JMX Object Name string of all SLEE Usage Notification Manager MBeans. This string is equal to "javax.slee.usage:type=UsageNotificationManager" and the string BASE_OBJECT_NAME + ",*" defines a JMX Object Name property pattern which matches with all Usage Notification Manager MBeans that are registered with the MBean Server. A Usage Notification Manager MBean is registered with the MBean Server using this base name in conjunction with the property specified by NOTIFICATION_SOURCE_KEY and additional properties depending on the type of the notification source.

See Also:
Constant Field Values

NOTIFICATION_SOURCE_KEY

static final java.lang.String NOTIFICATION_SOURCE_KEY
The JMX Object Name property key that identifies the type of the notification source that the Usage Notification Manager MBean is managing usage notification generation for. This key is equal to the string "notificationSource". The value of this key is equal to the USAGE_NOTIFICATION_TYPE constant defined by the notification source. For example, if this Usage Notification Manager MBean was managing usage notifications for an SBB, the Object Name of the Usage Notification Manager MBean would contain a property with a key specified by this constant and a value equal to SbbNotification.USAGE_NOTIFICATION_TYPE.

See Also:
BASE_OBJECT_NAME, Constant Field Values
Method Detail

getNotificationSource

NotificationSource getNotificationSource()
                                         throws ManagementException
Get the notification source that this Usage Notification Manager MBean is managing usage notification enabler flags for.

Returns:
the notification source.
Throws:
ManagementException - if the notification source could not be obtained due to a system-level failure.

close

void close()
           throws ManagementException
Notify the SLEE that the Usage Notification Manager MBean is no longer required by the management client. As the SLEE may subsequently deregister the Usage Notification Manager MBean from the MBean server, a client that invokes this method should assume that the Object Name they had for the MBean is no longer valid once this method returns.

Throws:
ManagementException - if the Usage Notification Manager MBean could not be closed by the SLEE due to a system-level failure.


Copyright © 2009. All Rights Reserved.