Package org.apache.catalina.util
Class LifecycleMBeanBase
- java.lang.Object
-
- org.apache.catalina.util.LifecycleBase
-
- org.apache.catalina.util.LifecycleMBeanBase
-
- All Implemented Interfaces:
javax.management.MBeanRegistration
,JmxEnabled
,Lifecycle
- Direct Known Subclasses:
Connector
,ContainerBase
,FailedContext
,ManagerBase
,MapperListener
,NamingResourcesImpl
,RealmBase
,SimpleTcpCluster
,StandardRoot
,StandardServer
,StandardService
,StandardThreadExecutor
,ValveBase
,WebappLoader
public abstract class LifecycleMBeanBase extends LifecycleBase implements JmxEnabled
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.apache.catalina.Lifecycle
Lifecycle.SingleUse
-
-
Field Summary
-
Fields inherited from interface org.apache.catalina.Lifecycle
AFTER_DESTROY_EVENT, AFTER_INIT_EVENT, AFTER_START_EVENT, AFTER_STOP_EVENT, BEFORE_DESTROY_EVENT, BEFORE_INIT_EVENT, BEFORE_START_EVENT, BEFORE_STOP_EVENT, CONFIGURE_START_EVENT, CONFIGURE_STOP_EVENT, PERIODIC_EVENT, START_EVENT, STOP_EVENT
-
-
Constructor Summary
Constructors Constructor Description LifecycleMBeanBase()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected void
destroyInternal()
Sub-classes wishing to perform additional clean-up should override this method, ensuring that super.destroyInternal() is the last call in the overriding method.java.lang.String
getDomain()
Obtain the domain under which this component will be / has been registered.protected abstract java.lang.String
getDomainInternal()
Method implemented by sub-classes to identify the domain in which MBeans should be registered.javax.management.ObjectName
getObjectName()
Obtain the name under which this component has been registered with JMX.protected abstract java.lang.String
getObjectNameKeyProperties()
Allow sub-classes to specify the key properties component of theObjectName
that will be used to register this component.protected void
initInternal()
Sub-classes wishing to perform additional initialization should override this method, ensuring that super.initInternal() is the first call in the overriding method.void
postDeregister()
Not used - NOOP.void
postRegister(java.lang.Boolean registrationDone)
Not used - NOOP.void
preDeregister()
Not used - NOOP.javax.management.ObjectName
preRegister(javax.management.MBeanServer server, javax.management.ObjectName name)
Allows the object to be registered with an alternativeMBeanServer
and/orObjectName
.protected javax.management.ObjectName
register(java.lang.Object obj, java.lang.String objectNameKeyProperties)
Utility method to enable sub-classes to easily register additional components that don't implementJmxEnabled
with an MBean server.void
setDomain(java.lang.String domain)
Specify the domain under which this component should be registered.protected void
unregister(java.lang.String objectNameKeyProperties)
Utility method to enable sub-classes to easily unregister additional components that don't implementJmxEnabled
with an MBean server.protected void
unregister(javax.management.ObjectName on)
Utility method to enable sub-classes to easily unregister additional components that don't implementJmxEnabled
with an MBean server.-
Methods inherited from class org.apache.catalina.util.LifecycleBase
addLifecycleListener, destroy, findLifecycleListeners, fireLifecycleEvent, getState, getStateName, getThrowOnFailure, init, removeLifecycleListener, setState, setState, setThrowOnFailure, start, startInternal, stop, stopInternal
-
-
-
-
Method Detail
-
initInternal
protected void initInternal() throws LifecycleException
Sub-classes wishing to perform additional initialization should override this method, ensuring that super.initInternal() is the first call in the overriding method.- Specified by:
initInternal
in classLifecycleBase
- Throws:
LifecycleException
- If the initialisation fails
-
destroyInternal
protected void destroyInternal() throws LifecycleException
Sub-classes wishing to perform additional clean-up should override this method, ensuring that super.destroyInternal() is the last call in the overriding method.- Specified by:
destroyInternal
in classLifecycleBase
- Throws:
LifecycleException
- If the destruction fails
-
setDomain
public final void setDomain(java.lang.String domain)
Specify the domain under which this component should be registered. Used with components that cannot (easily) navigate the component hierarchy to determine the correct domain to use.- Specified by:
setDomain
in interfaceJmxEnabled
- Parameters:
domain
- The name of the domain under which this component should be registered
-
getDomain
public final java.lang.String getDomain()
Obtain the domain under which this component will be / has been registered.- Specified by:
getDomain
in interfaceJmxEnabled
- Returns:
- the domain under which this component will be / has been registered.
-
getDomainInternal
protected abstract java.lang.String getDomainInternal()
Method implemented by sub-classes to identify the domain in which MBeans should be registered.- Returns:
- The name of the domain to use to register MBeans.
-
getObjectName
public final javax.management.ObjectName getObjectName()
Obtain the name under which this component has been registered with JMX.- Specified by:
getObjectName
in interfaceJmxEnabled
- Returns:
- the name under which this component has been registered with JMX.
-
getObjectNameKeyProperties
protected abstract java.lang.String getObjectNameKeyProperties()
Allow sub-classes to specify the key properties component of theObjectName
that will be used to register this component.- Returns:
- The string representation of the key properties component of the
desired
ObjectName
-
register
protected final javax.management.ObjectName register(java.lang.Object obj, java.lang.String objectNameKeyProperties)
Utility method to enable sub-classes to easily register additional components that don't implementJmxEnabled
with an MBean server.
Note: This method should only be used onceinitInternal()
has been called and beforedestroyInternal()
has been called.- Parameters:
obj
- The object the registerobjectNameKeyProperties
- The key properties component of the object name to use to register the object- Returns:
- The name used to register the object
-
unregister
protected final void unregister(java.lang.String objectNameKeyProperties)
Utility method to enable sub-classes to easily unregister additional components that don't implementJmxEnabled
with an MBean server.
Note: This method should only be used onceinitInternal()
has been called and beforedestroyInternal()
has been called.- Parameters:
objectNameKeyProperties
- The key properties component of the object name to use to unregister the object
-
unregister
protected final void unregister(javax.management.ObjectName on)
Utility method to enable sub-classes to easily unregister additional components that don't implementJmxEnabled
with an MBean server.
Note: This method should only be used onceinitInternal()
has been called and beforedestroyInternal()
has been called.- Parameters:
on
- The name of the component to unregister
-
postDeregister
public final void postDeregister()
Not used - NOOP.- Specified by:
postDeregister
in interfacejavax.management.MBeanRegistration
-
postRegister
public final void postRegister(java.lang.Boolean registrationDone)
Not used - NOOP.- Specified by:
postRegister
in interfacejavax.management.MBeanRegistration
-
preDeregister
public final void preDeregister() throws java.lang.Exception
Not used - NOOP.- Specified by:
preDeregister
in interfacejavax.management.MBeanRegistration
- Throws:
java.lang.Exception
-
preRegister
public final javax.management.ObjectName preRegister(javax.management.MBeanServer server, javax.management.ObjectName name) throws java.lang.Exception
Allows the object to be registered with an alternativeMBeanServer
and/orObjectName
.- Specified by:
preRegister
in interfacejavax.management.MBeanRegistration
- Throws:
java.lang.Exception
-
-