public interface UsageNotificationManagerMBean
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:
SbbNotification
:
ResourceAdaptorEntityNotification
:
SubsystemNotification
:
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:
public boolean get<usage-parameter-name>NotificationsEnabled() throws ManagementException;
public void set<usage-parameter-name>NotificationsEnabled(boolean enabled) throws ManagementException;
where
usage-parameter-name
is the name of the usage parameter, with
the first letter capitalized.
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.
Modifier and Type | Field and Description |
---|---|
static String |
BASE_OBJECT_NAME
The base JMX Object Name string of all SLEE Usage Notification Manager MBeans.
|
static 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.
|
Modifier and Type | Method and Description |
---|---|
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.
|
static final String BASE_OBJECT_NAME
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.static final String NOTIFICATION_SOURCE_KEY
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
.BASE_OBJECT_NAME
,
Constant Field ValuesNotificationSource getNotificationSource() throws ManagementException
ManagementException
- if the notification source could not be obtained due
to a system-level failure.void close() throws ManagementException
ManagementException
- if the Usage Notification Manager MBean could not be closed
by the SLEE due to a system-level failure.