Class BaseModelMBean
- java.lang.Object
-
- org.apache.commons.modeler.BaseModelMBean
-
- All Implemented Interfaces:
javax.management.DynamicMBean
,javax.management.MBeanRegistration
,javax.management.modelmbean.ModelMBean
,javax.management.modelmbean.ModelMBeanNotificationBroadcaster
,javax.management.NotificationBroadcaster
,javax.management.PersistentMBean
- Direct Known Subclasses:
JndiJmx
,MBeanProxy
public class BaseModelMBean extends java.lang.Object implements javax.management.modelmbean.ModelMBean, javax.management.MBeanRegistration
Basic implementation of the
ModelMBean
interface, which supports the minimal requirements of the interface contract.This can be used directly to wrap an existing java bean, or inside an mlet or anywhere an MBean would be used. The String parameter passed to the constructor will be used to construct an instance of the real object that we wrap. Limitations:
- Only managed resources of type
objectReference
are supportd. - Caching of attribute values and operation results is not supported.
All calls to
invoke()
are immediately executed. - Logging (under control of descriptors) is not supported.
- Persistence of MBean attributes and operations is not supported.
- All classes referenced as attribute types, operation parameters, or
operation return values must be one of the following:
- One of the Java primitive types (boolean, byte, char, double, float, integer, long, short). Corresponding value will be wrapped in the appropriate wrapper class automatically.
- Operations that return no value should declare a return type of
void
.
- Attribute caching is not supported
- Version:
- $Revision: 480402 $ $Date: 2006-11-29 04:43:23 +0000 (Wed, 29 Nov 2006) $
- Author:
- Craig R. McClanahan, Costin Manolache
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) static class
BaseModelMBean.MethodKey
-
Field Summary
Fields Modifier and Type Field Description protected BaseNotificationBroadcaster
attributeBroadcaster
Notification broadcaster for attribute changes.protected java.util.HashMap
attributes
Attribute values.protected BaseNotificationBroadcaster
generalBroadcaster
Notification broadcaster for general notifications.private java.util.Hashtable
getAttMap
protected javax.management.modelmbean.ModelMBeanInfo
info
TheModelMBeanInfo
object that controls our activity.private java.util.Hashtable
invokeAttMap
private static org.apache.commons.logging.Log
log
(package private) static java.lang.Object[]
NO_ARGS_PARAM
(package private) static java.lang.Class[]
NO_ARGS_PARAM_SIG
protected javax.management.ObjectName
oname
protected Registry
registry
Registry we are associated withprotected java.lang.Object
resource
The managed resource this MBean is associated with (if any).protected java.lang.String
resourceType
private java.util.Hashtable
setAttMap
protected ModelerSource
source
Source object used to read this mbean.
-
Constructor Summary
Constructors Constructor Description BaseModelMBean()
Construct aModelMBean
with defaultModelMBeanInfo
information.BaseModelMBean(java.lang.String type)
Construct a ModelMBean of a specified type.BaseModelMBean(java.lang.String type, ModelerSource source)
BaseModelMBean(javax.management.modelmbean.ModelMBeanInfo info)
Construct aModelMBean
associated with the specifiedModelMBeanInfo
information.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addAttributeChangeNotificationListener(javax.management.NotificationListener listener, java.lang.String name, java.lang.Object handback)
Add an attribute change notification event listener to this MBean.void
addNotificationListener(javax.management.NotificationListener listener, javax.management.NotificationFilter filter, java.lang.Object handback)
Add a notification event listener to this MBean.protected javax.management.modelmbean.ModelMBeanInfo
createDefaultModelMBeanInfo()
Create and return a defaultModelMBeanInfo
object.protected void
createResource()
Set the type of the mbean.java.lang.Object
getAttribute(java.lang.String name)
Obtain and return the value of a specific attribute of this MBean.private java.lang.Class
getAttributeClass(java.lang.String signature)
javax.management.AttributeList
getAttributes(java.lang.String[] names)
Obtain and return the values of several attributes of this MBean.java.lang.String
getClassName()
javax.management.ObjectName
getJmxName()
java.lang.Object
getManagedResource()
Get the instance handle of the object against which we execute all methods in this ModelMBean management interface.javax.management.MBeanInfo
getMBeanInfo()
Return theMBeanInfo
object for this MBean.java.lang.String
getModelerType()
javax.management.MBeanNotificationInfo[]
getNotificationInfo()
Return anMBeanNotificationInfo
object describing the notifications sent by this MBean.java.lang.String
getObjectName()
Registry
getRegistry()
protected void
initModelInfo(java.lang.String type)
Set the type of the mbean.java.lang.Object
invoke(java.lang.String name, java.lang.Object[] params, java.lang.String[] signature)
Invoke a particular method on this MBean, and return any returned value.protected boolean
isModelMBeanInfoValid(javax.management.modelmbean.ModelMBeanInfo info)
Is the specifiedModelMBeanInfo
instance valid?void
load()
Instantiates this MBean instance from data found in the persistent store.void
postDeregister()
void
postRegister(java.lang.Boolean registrationDone)
void
preDeregister()
javax.management.ObjectName
preRegister(javax.management.MBeanServer server, javax.management.ObjectName name)
void
removeAttributeChangeNotificationListener(javax.management.NotificationListener listener, java.lang.String name)
Remove an attribute change notification event listener from this MBean.void
removeAttributeChangeNotificationListener(javax.management.NotificationListener listener, java.lang.String attributeName, java.lang.Object handback)
Remove an attribute change notification event listener from this MBean.void
removeNotificationListener(javax.management.NotificationListener listener)
Remove a notification event listener from this MBean.void
removeNotificationListener(javax.management.NotificationListener listener, java.lang.Object handback)
Remove a notification event listener from this MBean.void
removeNotificationListener(javax.management.NotificationListener listener, javax.management.NotificationFilter filter, java.lang.Object handback)
Remove a notification event listener from this MBean.void
sendAttributeChangeNotification(javax.management.AttributeChangeNotification notification)
Send anAttributeChangeNotification
to all registered listeners.void
sendAttributeChangeNotification(javax.management.Attribute oldValue, javax.management.Attribute newValue)
Send anAttributeChangeNotification
to all registered listeners.void
sendNotification(java.lang.String message)
Send aNotification
which contains the specified string as ajmx.modelmbean.generic
notification.void
sendNotification(javax.management.Notification notification)
Send aNotification
to all registered listeners as ajmx.modelmbean.general
notification.void
setAttribute(javax.management.Attribute attribute)
Set the value of a specific attribute of this MBean.javax.management.AttributeList
setAttributes(javax.management.AttributeList attributes)
Set the values of several attributes of this MBean.void
setManagedResource(java.lang.Object resource, java.lang.String type)
Set the instance handle of the object against which we will execute all methods in this ModelMBean management interface.void
setModeledType(java.lang.String type)
Set the type of the mbean.void
setModelMBeanInfo(javax.management.modelmbean.ModelMBeanInfo info)
Initialize theModelMBeanInfo
associated with thisModelMBean
.void
setRegistry(Registry registry)
void
store()
Capture the current state of this MBean instance and write it out to the persistent store.java.lang.String
toString()
-
-
-
Field Detail
-
log
private static org.apache.commons.logging.Log log
-
attributeBroadcaster
protected BaseNotificationBroadcaster attributeBroadcaster
Notification broadcaster for attribute changes.
-
registry
protected Registry registry
Registry we are associated with
-
generalBroadcaster
protected BaseNotificationBroadcaster generalBroadcaster
Notification broadcaster for general notifications.
-
oname
protected javax.management.ObjectName oname
-
info
protected javax.management.modelmbean.ModelMBeanInfo info
TheModelMBeanInfo
object that controls our activity.
-
resource
protected java.lang.Object resource
The managed resource this MBean is associated with (if any).
-
resourceType
protected java.lang.String resourceType
-
source
protected ModelerSource source
Source object used to read this mbean. Can be used to persist the mbean
-
attributes
protected java.util.HashMap attributes
Attribute values. XXX That can be stored in the value Field
-
NO_ARGS_PARAM
static final java.lang.Object[] NO_ARGS_PARAM
-
NO_ARGS_PARAM_SIG
static final java.lang.Class[] NO_ARGS_PARAM_SIG
-
getAttMap
private java.util.Hashtable getAttMap
-
setAttMap
private java.util.Hashtable setAttMap
-
invokeAttMap
private java.util.Hashtable invokeAttMap
-
-
Constructor Detail
-
BaseModelMBean
public BaseModelMBean() throws javax.management.MBeanException, javax.management.RuntimeOperationsException
Construct aModelMBean
with defaultModelMBeanInfo
information.- Throws:
javax.management.MBeanException
- if the initializer of an object throws an exceptionjavax.management.RuntimeOperationsException
- if an IllegalArgumentException occurs
-
BaseModelMBean
public BaseModelMBean(javax.management.modelmbean.ModelMBeanInfo info) throws javax.management.MBeanException, javax.management.RuntimeOperationsException
Construct aModelMBean
associated with the specifiedModelMBeanInfo
information.- Parameters:
info
- ModelMBeanInfo for this MBean- Throws:
javax.management.MBeanException
- if the initializer of an object throws an exceptionjavax.management.RuntimeOperationsException
- if an IllegalArgumentException occurs
-
BaseModelMBean
public BaseModelMBean(java.lang.String type) throws javax.management.MBeanException, javax.management.RuntimeOperationsException
Construct a ModelMBean of a specified type. The type can be a class name or the key used in one of the descriptors. If no descriptor is available, we'll first try to locate one in the same package with the class, then use introspection. The mbean resource will be created.- Parameters:
type
- Class name or the type key used in the descriptor.- Throws:
javax.management.MBeanException
javax.management.RuntimeOperationsException
-
BaseModelMBean
public BaseModelMBean(java.lang.String type, ModelerSource source) throws javax.management.MBeanException, javax.management.RuntimeOperationsException
- Throws:
javax.management.MBeanException
javax.management.RuntimeOperationsException
-
-
Method Detail
-
getAttribute
public java.lang.Object getAttribute(java.lang.String name) throws javax.management.AttributeNotFoundException, javax.management.MBeanException, javax.management.ReflectionException
Obtain and return the value of a specific attribute of this MBean.- Specified by:
getAttribute
in interfacejavax.management.DynamicMBean
- Parameters:
name
- Name of the requested attribute- Throws:
javax.management.AttributeNotFoundException
- if this attribute is not supported by this MBeanjavax.management.MBeanException
- if the initializer of an object throws an exceptionjavax.management.ReflectionException
- if a Java reflection exception occurs when invoking the getter
-
getAttributes
public javax.management.AttributeList getAttributes(java.lang.String[] names)
Obtain and return the values of several attributes of this MBean.- Specified by:
getAttributes
in interfacejavax.management.DynamicMBean
- Parameters:
names
- Names of the requested attributes
-
getMBeanInfo
public javax.management.MBeanInfo getMBeanInfo()
Return theMBeanInfo
object for this MBean.- Specified by:
getMBeanInfo
in interfacejavax.management.DynamicMBean
-
invoke
public java.lang.Object invoke(java.lang.String name, java.lang.Object[] params, java.lang.String[] signature) throws javax.management.MBeanException, javax.management.ReflectionException
Invoke a particular method on this MBean, and return any returned value.IMPLEMENTATION NOTE - This implementation will attempt to invoke this method on the MBean itself, or (if not available) on the managed resource object associated with this MBean.
- Specified by:
invoke
in interfacejavax.management.DynamicMBean
- Parameters:
name
- Name of the operation to be invokedparams
- Array containing the method parameters of this operationsignature
- Array containing the class names representing the signature of this operation- Throws:
javax.management.MBeanException
- if the initializer of an object throws an exceptionReflectioNException
- if a Java reflection exception occurs when invoking a methodjavax.management.ReflectionException
-
getAttributeClass
private java.lang.Class getAttributeClass(java.lang.String signature) throws javax.management.ReflectionException
- Throws:
javax.management.ReflectionException
-
setAttribute
public void setAttribute(javax.management.Attribute attribute) throws javax.management.AttributeNotFoundException, javax.management.MBeanException, javax.management.ReflectionException
Set the value of a specific attribute of this MBean.- Specified by:
setAttribute
in interfacejavax.management.DynamicMBean
- Parameters:
attribute
- The identification of the attribute to be set and the new value- Throws:
javax.management.AttributeNotFoundException
- if this attribute is not supported by this MBeanjavax.management.MBeanException
- if the initializer of an object throws an exceptionjavax.management.ReflectionException
- if a Java reflection exception occurs when invoking the getter
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
setAttributes
public javax.management.AttributeList setAttributes(javax.management.AttributeList attributes)
Set the values of several attributes of this MBean.- Specified by:
setAttributes
in interfacejavax.management.DynamicMBean
- Parameters:
attributes
- THe names and values to be set- Returns:
- The list of attributes that were set and their new values
-
getManagedResource
public java.lang.Object getManagedResource() throws javax.management.InstanceNotFoundException, javax.management.modelmbean.InvalidTargetObjectTypeException, javax.management.MBeanException, javax.management.RuntimeOperationsException
Get the instance handle of the object against which we execute all methods in this ModelMBean management interface.- Throws:
javax.management.InstanceNotFoundException
- if the managed resource object cannot be foundjavax.management.MBeanException
- if the initializer of the object throws an exceptionjavax.management.RuntimeOperationsException
- if the managed resource or the resource type isnull
or invalidjavax.management.modelmbean.InvalidTargetObjectTypeException
-
setManagedResource
public void setManagedResource(java.lang.Object resource, java.lang.String type) throws javax.management.InstanceNotFoundException, javax.management.modelmbean.InvalidTargetObjectTypeException, javax.management.MBeanException, javax.management.RuntimeOperationsException
Set the instance handle of the object against which we will execute all methods in this ModelMBean management interface. This method will detect and call "setModelMbean" method. A resource can implement this method to get a reference to the model mbean. The reference can be used to send notification and access the registry.- Specified by:
setManagedResource
in interfacejavax.management.modelmbean.ModelMBean
- Parameters:
resource
- The resource object to be managedtype
- The type of reference for the managed resource ("ObjectReference", "Handle", "IOR", "EJBHandle", or "RMIReference")- Throws:
javax.management.InstanceNotFoundException
- if the managed resource object cannot be foundjavax.management.modelmbean.InvalidTargetObjectTypeException
- if this ModelMBean is asked to handle a reference type it cannot deal withjavax.management.MBeanException
- if the initializer of the object throws an exceptionjavax.management.RuntimeOperationsException
- if the managed resource or the resource type isnull
or invalid
-
setModelMBeanInfo
public void setModelMBeanInfo(javax.management.modelmbean.ModelMBeanInfo info) throws javax.management.MBeanException, javax.management.RuntimeOperationsException
Initialize theModelMBeanInfo
associated with thisModelMBean
. After the information and associated descriptors have been customized, theModelMBean
should be registered with the associatedMBeanServer
. Currently the model can be set after registration. This behavior is deprecated and won't be supported in future versions.- Specified by:
setModelMBeanInfo
in interfacejavax.management.modelmbean.ModelMBean
- Parameters:
info
- The ModelMBeanInfo object to be used by this ModelMBean- Throws:
javax.management.MBeanException
- If an exception occurs recording this ModelMBeanInfo informationRuntimeOperations
- if the specified parameter isnull
or invalidjavax.management.RuntimeOperationsException
-
addAttributeChangeNotificationListener
public void addAttributeChangeNotificationListener(javax.management.NotificationListener listener, java.lang.String name, java.lang.Object handback) throws java.lang.IllegalArgumentException
Add an attribute change notification event listener to this MBean.- Specified by:
addAttributeChangeNotificationListener
in interfacejavax.management.modelmbean.ModelMBeanNotificationBroadcaster
- Parameters:
listener
- Listener that will receive event notificationsname
- Name of the attribute of interest, ornull
to indicate interest in all attributeshandback
- Handback object to be sent along with event notifications- Throws:
java.lang.IllegalArgumentException
- if the listener parameter is null
-
removeAttributeChangeNotificationListener
public void removeAttributeChangeNotificationListener(javax.management.NotificationListener listener, java.lang.String name) throws javax.management.ListenerNotFoundException
Remove an attribute change notification event listener from this MBean.- Specified by:
removeAttributeChangeNotificationListener
in interfacejavax.management.modelmbean.ModelMBeanNotificationBroadcaster
- Parameters:
listener
- The listener to be removedname
- The attribute name for which no more events are required- Throws:
javax.management.ListenerNotFoundException
- if this listener is not registered in the MBean
-
removeAttributeChangeNotificationListener
public void removeAttributeChangeNotificationListener(javax.management.NotificationListener listener, java.lang.String attributeName, java.lang.Object handback) throws javax.management.ListenerNotFoundException
Remove an attribute change notification event listener from this MBean.- Parameters:
listener
- The listener to be removedattributeName
- The attribute name for which no more events are requiredhandback
- Handback object to be sent along with event notifications- Throws:
javax.management.ListenerNotFoundException
- if this listener is not registered in the MBean
-
sendAttributeChangeNotification
public void sendAttributeChangeNotification(javax.management.AttributeChangeNotification notification) throws javax.management.MBeanException, javax.management.RuntimeOperationsException
Send anAttributeChangeNotification
to all registered listeners.- Specified by:
sendAttributeChangeNotification
in interfacejavax.management.modelmbean.ModelMBeanNotificationBroadcaster
- Parameters:
notification
- TheAttributeChangeNotification
that will be passed- Throws:
javax.management.MBeanException
- if an object initializer throws an exceptionjavax.management.RuntimeOperationsException
- wraps IllegalArgumentException when the specified notification isnull
or invalid
-
sendAttributeChangeNotification
public void sendAttributeChangeNotification(javax.management.Attribute oldValue, javax.management.Attribute newValue) throws javax.management.MBeanException, javax.management.RuntimeOperationsException
Send anAttributeChangeNotification
to all registered listeners.- Specified by:
sendAttributeChangeNotification
in interfacejavax.management.modelmbean.ModelMBeanNotificationBroadcaster
- Parameters:
oldValue
- The original value of theAttribute
newValue
- The new value of theAttribute
- Throws:
javax.management.MBeanException
- if an object initializer throws an exceptionjavax.management.RuntimeOperationsException
- wraps IllegalArgumentException when the specified notification isnull
or invalid
-
sendNotification
public void sendNotification(javax.management.Notification notification) throws javax.management.MBeanException, javax.management.RuntimeOperationsException
Send aNotification
to all registered listeners as ajmx.modelmbean.general
notification.- Specified by:
sendNotification
in interfacejavax.management.modelmbean.ModelMBeanNotificationBroadcaster
- Parameters:
notification
- TheNotification
that will be passed- Throws:
javax.management.MBeanException
- if an object initializer throws an exceptionjavax.management.RuntimeOperationsException
- wraps IllegalArgumentException when the specified notification isnull
or invalid
-
sendNotification
public void sendNotification(java.lang.String message) throws javax.management.MBeanException, javax.management.RuntimeOperationsException
Send aNotification
which contains the specified string as ajmx.modelmbean.generic
notification.- Specified by:
sendNotification
in interfacejavax.management.modelmbean.ModelMBeanNotificationBroadcaster
- Parameters:
message
- The message string to be passed- Throws:
javax.management.MBeanException
- if an object initializer throws an exceptionjavax.management.RuntimeOperationsException
- wraps IllegalArgumentException when the specified notification isnull
or invalid
-
addNotificationListener
public void addNotificationListener(javax.management.NotificationListener listener, javax.management.NotificationFilter filter, java.lang.Object handback) throws java.lang.IllegalArgumentException
Add a notification event listener to this MBean.- Specified by:
addNotificationListener
in interfacejavax.management.NotificationBroadcaster
- Parameters:
listener
- Listener that will receive event notificationsfilter
- Filter object used to filter event notifications actually delivered, ornull
for no filteringhandback
- Handback object to be sent along with event notifications- Throws:
java.lang.IllegalArgumentException
- if the listener parameter is null
-
getNotificationInfo
public javax.management.MBeanNotificationInfo[] getNotificationInfo()
Return anMBeanNotificationInfo
object describing the notifications sent by this MBean.- Specified by:
getNotificationInfo
in interfacejavax.management.NotificationBroadcaster
-
removeNotificationListener
public void removeNotificationListener(javax.management.NotificationListener listener) throws javax.management.ListenerNotFoundException
Remove a notification event listener from this MBean.- Specified by:
removeNotificationListener
in interfacejavax.management.NotificationBroadcaster
- Parameters:
listener
- The listener to be removed (any and all registrations for this listener will be eliminated)- Throws:
javax.management.ListenerNotFoundException
- if this listener is not registered in the MBean
-
removeNotificationListener
public void removeNotificationListener(javax.management.NotificationListener listener, java.lang.Object handback) throws javax.management.ListenerNotFoundException
Remove a notification event listener from this MBean.- Parameters:
listener
- The listener to be removed (any and all registrations for this listener will be eliminated)handback
- Handback object to be sent along with event notifications- Throws:
javax.management.ListenerNotFoundException
- if this listener is not registered in the MBean
-
removeNotificationListener
public void removeNotificationListener(javax.management.NotificationListener listener, javax.management.NotificationFilter filter, java.lang.Object handback) throws javax.management.ListenerNotFoundException
Remove a notification event listener from this MBean.- Parameters:
listener
- The listener to be removed (any and all registrations for this listener will be eliminated)filter
- Filter object used to filter event notifications actually delivered, ornull
for no filteringhandback
- Handback object to be sent along with event notifications- Throws:
javax.management.ListenerNotFoundException
- if this listener is not registered in the MBean
-
load
public void load() throws javax.management.InstanceNotFoundException, javax.management.MBeanException, javax.management.RuntimeOperationsException
Instantiates this MBean instance from data found in the persistent store. The data loaded could include attribute and operation values. This method should be called during construction or initialization of the instance, and before the MBean is registered with theMBeanServer
.IMPLEMENTATION NOTE - This implementation does not support persistence.
- Specified by:
load
in interfacejavax.management.PersistentMBean
- Throws:
javax.management.InstanceNotFoundException
- if the managed resource object cannot be foundjavax.management.MBeanException
- if the initializer of the object throws an exceptionjavax.management.RuntimeOperationsException
- if an exception is reported by the persistence mechanism
-
store
public void store() throws javax.management.InstanceNotFoundException, javax.management.MBeanException, javax.management.RuntimeOperationsException
Capture the current state of this MBean instance and write it out to the persistent store. The state stored could include attribute and operation values. If one of these methods of persistence is not supported, a "service not found" exception will be thrown.IMPLEMENTATION NOTE - This implementation does not support persistence.
- Specified by:
store
in interfacejavax.management.PersistentMBean
- Throws:
javax.management.InstanceNotFoundException
- if the managed resource object cannot be foundjavax.management.MBeanException
- if the initializer of the object throws an exception, or persistence is not supportedjavax.management.RuntimeOperationsException
- if an exception is reported by the persistence mechanism
-
setModeledType
public void setModeledType(java.lang.String type)
Set the type of the mbean. This is used as a key to locate the description in the Registry.- Parameters:
type
- the type of classname of the modeled object
-
initModelInfo
protected void initModelInfo(java.lang.String type)
Set the type of the mbean. This is used as a key to locate the description in the Registry.- Parameters:
type
- the type of classname of the modeled object
-
createResource
protected void createResource()
Set the type of the mbean. This is used as a key to locate the description in the Registry.
-
getModelerType
public java.lang.String getModelerType()
-
getClassName
public java.lang.String getClassName()
-
getJmxName
public javax.management.ObjectName getJmxName()
-
getObjectName
public java.lang.String getObjectName()
-
setRegistry
public void setRegistry(Registry registry)
-
getRegistry
public Registry getRegistry()
-
createDefaultModelMBeanInfo
protected javax.management.modelmbean.ModelMBeanInfo createDefaultModelMBeanInfo()
Create and return a defaultModelMBeanInfo
object.
-
isModelMBeanInfoValid
protected boolean isModelMBeanInfoValid(javax.management.modelmbean.ModelMBeanInfo info)
Is the specifiedModelMBeanInfo
instance valid?IMPLEMENTATION NOTE - This implementation does not check anything, but this method can be overridden as required.
- Parameters:
info
- TheModelMBeanInfo object to check
-
preRegister
public javax.management.ObjectName preRegister(javax.management.MBeanServer server, javax.management.ObjectName name) throws java.lang.Exception
- Specified by:
preRegister
in interfacejavax.management.MBeanRegistration
- Throws:
java.lang.Exception
-
postRegister
public void postRegister(java.lang.Boolean registrationDone)
- Specified by:
postRegister
in interfacejavax.management.MBeanRegistration
-
preDeregister
public void preDeregister() throws java.lang.Exception
- Specified by:
preDeregister
in interfacejavax.management.MBeanRegistration
- Throws:
java.lang.Exception
-
postDeregister
public void postDeregister()
- Specified by:
postDeregister
in interfacejavax.management.MBeanRegistration
-
-