All Downloads are FREE. Search and download functionalities are using the official Maven repository.

javax.slee.management.ProfileTableUsageMBean Maven / Gradle / Ivy

package javax.slee.management;

import javax.slee.InvalidArgumentException;
import javax.slee.usage.UnrecognizedUsageParameterSetNameException;
import javax.management.ObjectName;

/**
 * The ProfileTableUsageMBean interface defines profile table usage-related
 * management operations.  Using a ProfileTableUsageMBean object a management
 * client may get access to UsageMBean objects for a profile table, or
 * modify the list of named usage parameter sets profiles in a profile table are
 * allowed to use.
 * 

* The base JMX Object Name of a ProfileTableUsageMBean object is specified by * the {@link #BASE_OBJECT_NAME} constant. The {@link #PROFILE_TABLE_NAME_KEY} * constant defines an additional Object Name property that uniquely identifies a Profile * Table Usage MBean. The complete Object Name of a ProfileTableUsageMBean * object can be obtained by a management client via the * {@link ProfileProvisioningMBean#getProfileTableUsageMBean} method. * @since SLEE 1.1 */ public interface ProfileTableUsageMBean { /** * The base JMX Object Name string of all SLEE Profile Table Usage MBeans. This * string is equal to "javax.slee.management.usage:type=ProfileTableUsage" and the * string BASE_OBJECT_NAME + ",*" defines a JMX Object Name property * pattern which matches with all Profile Table Usage MBeans that are registered * with the MBean Server. A Profile Table Usage MBean is registered with the MBean * Server using this base name in conjunction with properties whose keys are * specified by the {@link #PROFILE_TABLE_NAME_KEY} constant. */ public static final String BASE_OBJECT_NAME = "javax.slee.management.usage:type=ProfileTableUsage"; /** * The JMX Object Name property key that identifies the name of the profile table * that the Profile Table Usage MBean is providing usage-related management operations * for. This key is equal to the string "profileTableName". */ public static final String PROFILE_TABLE_NAME_KEY = "profileTableName"; /** * Get the name of the profile table that this MBean provides usage management * access for. * @return the name of the profile table. * @throws ManagementException if the profile table name could * not be obtained due to a system-level failure. */ public String getProfileTableName() throws ManagementException; /** * Create a new usage parameter set that the profiles in the profile table that this * MBean is providing usage acces for are permitted to use in the one-argument form * of the get-usage-parameters method. * @param paramSetName the usage parameter set name. Names must be non-null and * greater than 0 in length. * @throws NullPointerException if paramSetName is null. * @throws InvalidArgumentException if paramSetName is zero-length. * @throws UsageParameterSetNameAlreadyExistsException if the name has already been * used to create a usage parameter set for the profile table. * @throws ManagementException if the usage parameter set could not be created due to * a system-level failure. */ public void createUsageParameterSet(String paramSetName) throws NullPointerException, InvalidArgumentException, UsageParameterSetNameAlreadyExistsException, ManagementException; /** * Remove an existing usage parameter set from the profile table that this MBean * is providing usage management access for. * @param paramSetName the usage parameter set name. * @throws NullPointerException if paramSetName is null. * @throws UnrecognizedUsageParameterSetNameException if the name does not identify a * usage parameter set that has been created for the profile table. * @throws ManagementException if the name could not be removed due to a system-level * failure. */ public void removeUsageParameterSet(String paramSetName) throws NullPointerException, UnrecognizedUsageParameterSetNameException, ManagementException; /** * Get the names of the usage parameter sets that have been created for the profile table * that this MBean is providing usage management access for. * @return the names of the usage parameter sets. * @throws ManagementException if the names could not be obtained due to a system-level * failure. */ public String[] getUsageParameterSets() throws ManagementException; /** * Get the JMX Object Name of a {@link javax.slee.usage.UsageMBean} object that provides * management access to the unnamed usage parameter set for the profile table that this * MBean is providing usage management access for. * @return the Object Name of a UsageMBean object for the unnamed usage * parameter set for the profile table. * @throws ManagementException if the Object Name could not be obtained due to a * system-level failure. */ public ObjectName getUsageMBean() throws ManagementException; /** * Get the JMX Object Name of a {@link javax.slee.usage.UsageMBean} object that provides * management access to the named usage parameter set for the profile table that this * MBean is providing usage management access for. * @param paramSetName the name of the usage parameter set. The name must be one of the * names returned by {@link #getUsageParameterSets}. * @return the Object Name of a UsageMBean object for the named usage parameter * set for the profile table. * @throws NullPointerException if paramSetName is null. * @throws UnrecognizedUsageParameterSetNameException if the named usage parameter set * has not been created for the profilet table. * @throws ManagementException if the Object Name could not be obtained due to a * system-level failure. */ public ObjectName getUsageMBean(String paramSetName) throws NullPointerException, UnrecognizedUsageParameterSetNameException, ManagementException; /** * Get the JMX Object Name of a {@link javax.slee.usage.UsageNotificationManagerMBean} * that provides management access to the usage notification manager for the profile * table that this MBean is providing usage management access for. * @throws ManagementException if the Object Name could not be obtained due to a * system-level failure. */ public ObjectName getUsageNotificationManagerMBean() throws ManagementException; /** * Reset all usage parameters in the unamed usage parameter set, and all named usage * parameter sets, of the profile table that this MBean is providing usage management * access for. Counter-type usage parameters are reset to 0 and sample-type * usage parameters have all samples cleared. * @throws ManagementException if the values of the usage parameters could not be * reset due to a system-level failure. */ public void resetAllUsageParameters() throws ManagementException; /** * Notify the SLEE that the Profile Table Usage MBean is no longer required by the * management client. As the SLEE may subsequently deregister this 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 Profile Table Usage MBean could not be closed by * the SLEE due to a system-level failure. */ public void close() throws ManagementException; }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy