<?xml version="1.0"?>
<!--
  Licensed to the Apache Software Foundation (ASF) under one or more
  contributor license agreements.  See the NOTICE file distributed with
  this work for additional information regarding copyright ownership.
  The ASF licenses this file to You under the Apache License, Version 2.0
  (the "License"); you may not use this file except in compliance with
  the License.  You may obtain a copy of the License at

      http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.
-->
<mbeans-descriptors>

  <mbean name="ApplicationFilterConfig"
         description="Wrapper that represents an individual servlet-filter definition"
         domain="Catalina"
         group="Filter"
         type="org.apache.catalina.core.ApplicationFilterConfig">

     <attribute name="filterName"
                description="The name used to reference the filter in web.xml"
                type="java.lang.String"
                writeable="false"/>

     <attribute name="filterClass"
                description="Fully qualified class name of the filter object"
                type="java.lang.String"
                writeable="false"/>

     <attribute name="filterInitParameterMap"
                description="Return the initiaization parameters associated with this filter"
                type="java.util.Map"
                writeable="false" />

  </mbean>

  <mbean name="NamingContextListener"
         description="Helper class used to initialize and populate the JNDI context associated with each context and server"
         domain="Catalina"
         group="Listener"
         type="org.apache.catalina.core.NamingContextListener">

    <attribute name="className"
               description="Fully qualified class name of the managed object"
               type="java.lang.String"
               writeable="false"/>

    <attribute name="name"
               description="Name of the associated naming context"
               type="java.lang.String"
               writeable="false"/>

  </mbean>

  <mbean name="StandardContext"
         description="Standard Context Component"
         domain="Catalina"
         group="Context"
         type="org.apache.catalina.core.StandardContext"
         className="org.apache.catalina.mbeans.ContextMBean">

    <attribute name="altDDName"
               description="The alternate deployment descriptor name."
               type="java.lang.String" />

    <attribute name="antiResourceLocking"
               description="Take care to not lock resources"
               type="boolean" />

    <attribute name="baseName"
               description="The base name used for directories, WAR files (with .war appended) and context.xml files (with .xml appended)."
               type="java.lang.String"
               writeable="false"/>

    <attribute name="children"
               description="Object names of all children"
               type="[Ljavax.management.ObjectName;"/>

    <attribute name="clearReferencesStatic"
               description="Should Tomcat attempt to null out any static or final fields from loaded classes when a web application is stopped as a work around for apparent garbage collection bugs and application coding errors?"
               type="boolean"/>

    <attribute name="clearReferencesStopThreads"
               description="Should Tomcat attempt to terminate threads that have been started by the web application? Advisable to be used only in a development environment."
               type="boolean"/>

    <attribute name="clearReferencesStopTimerThreads"
               description="Should Tomcat attempt to terminate TimerThreads that have been started by the web application? Advisable to be used only in a development environment."
               type="boolean"/>

    <attribute name="configFile"
               description="Location of the context.xml resource or file"
               type="java.net.URL"/>

    <attribute name="configured"
               description="The correctly configured flag for this Context."
               type="boolean"
               writeable="false" />

    <attribute name="cookies"
               description="Should we attempt to use cookies for session id communication?"
               type="boolean"/>

    <attribute name="crossContext"
               description="Should we allow the ServletContext.getContext() method to access the context of other web applications in this server?"
               type="boolean"/>

    <attribute name="defaultContextXml"
               description="Location of the default context.xml resource or file"
               type="java.lang.String"/>

    <attribute name="defaultWebXml"
               description="Location of the default web.xml resource or file"
               type="java.lang.String"/>

    <attribute name="delegate"
               description=""
               type="boolean"/>

    <attribute name="deploymentDescriptor"
               description="String deployment descriptor "
               type="java.lang.String"
               writeable="false" />

    <attribute name="displayName"
               description="The display name of this web application"
               type="java.lang.String"/>

    <attribute name="distributable"
               description="The distributable flag for this web application."
               type="boolean"/>

    <attribute name="docBase"
               description="The document root for this web application"
               type="java.lang.String"/>

    <attribute name="encodedPath"
               description="The encoded path"
               type="java.lang.String"
               writeable="false" />

    <attribute name="ignoreAnnotations"
               description="Ignore annotations flag."
               type="boolean" />

    <attribute name="instanceManager"
               description="Object that creates and destroys servlets, filters, and listeners. Include dependency injection and postConstruct/preDestory handling"
               type="org.apache.catalina.instanceManagement.InstanceManager" />

    <attribute name="javaVMs"
               description="The Java virtual machines on which this module is running"
               type="[Ljava.lang.String;"/>

    <attribute name="loader"
               description="Associated loader."
               type="org.apache.catalina.Loader" />

    <attribute name="logEffectiveWebXml"
               description="Should the effective web.xml be logged when the context starts?"
               type="boolean" />

    <attribute name="logger"
               description="Associated logger."
               type="org.apache.juli.logging.Log" />

    <attribute name="managedResource"
               description="The managed resource this MBean is associated with"
               type="java.lang.Object"/>

    <attribute name="manager"
               description="Associated manager."
               type="org.apache.catalina.Manager" />

    <attribute name="mapperContextRootRedirectEnabled"
               description="Should the Mapper be used for context root redirects"
               type="boolean" />

    <attribute name="mapperDirectoryRedirectEnabled"
               description="Should the Mapper be used for directory redirects"
               type="boolean" />

    <attribute name="namingContextListener"
               description="Associated naming context listener."
               type="org.apache.catalina.core.NamingContextListener" />

    <attribute name="objectName"
               description="Name of the object"
               type="java.lang.String"
               writeable="false" />

    <attribute name="originalDocBase"
               description="The original document root for this web application"
               type="java.lang.String" />

    <attribute name="override"
               description="The default context.xml override flag for this web application"
               type="boolean"/>

    <attribute name="name"
               description="The name of this Context"
               type="java.lang.String"/>

    <attribute name="parentClassLoader"
               description="Parent class loader."
               type="java.lang.ClassLoader" />

    <attribute name="path"
               description="The context path for this Context"
               type="java.lang.String"/>

    <attribute name="paused"
               description="The request processing pause flag (while reloading occurs)"
               type="boolean"
               writeable="false" />

    <attribute name="privileged"
               description="Access to tomcat internals"
               type="boolean"/>

    <attribute name="processingTime"
               description="Cumulative execution times of all servlets in this context"
               type="long"
               writeable="false" />

    <attribute name="maxTime"
               description="Maximum execution time of all servlets in this context"
               type="long"
               writeable="false" />

    <attribute name="minTime"
               description="Minimum execution time of all servlets in this context"
               type="long"
               writeable="false" />

    <attribute name="requestCount"
               description="Cumulative request count of all servlets in this context"
               type="int"
               writeable="false" />

    <attribute name="errorCount"
               description="Cumulative error count of all servlets in this context"
               type="int"
               writeable="false" />

    <attribute name="publicId"
               description="The public identifier of the DTD for the web application deployment descriptor version that is being parsed"
               type="java.lang.String"
               writeable="false" />

    <attribute name="realm"
               description="Associated realm."
               type="org.apache.catalina.Realm" />

    <attribute name="reloadable"
               description="The reloadable flag for this web application"
               type="boolean"/>

    <attribute name="renewThreadsWhenStoppingContext"
               description="Should Tomcat renew the threads of the thread pool when the application is stopped to avoid memory leaks because of uncleaned ThreadLocal variables."
               type="boolean"/>

    <attribute name="server"
               description="The J2EE Server this module is deployed on"
               type="java.lang.String"/>

    <attribute name="servlets"
               description="JSR77 list of servlets"
               type="[Ljava.lang.String;"
               writeable="false"/>

    <attribute name="sessionCookieName"
               description="The name to use for session cookies.'null' indicates that the name is controlled by the application."
               type="java.lang.String"/>

    <attribute name="sessionCookieDomain"
               description="The domain to use for session cookies.'null' indicates that the domain is controlled by the application."
               type="java.lang.String"/>

    <attribute name="sessionCookiePath"
               description="The path to use for session cookies.'null' indicates that the path is controlled by the application."
               type="java.lang.String"/>

    <attribute name="sessionTimeout"
               description="The session timeout (in minutes) for this web application"
               type="int"/>

    <attribute name="startTime"
               description="Time (in milliseconds since January 1, 1970, 00:00:00) when this context was started"
               type="long"
               writeable="false" />

    <attribute name="startupTime"
               description="Time (in milliseconds) it took to start this context"
               type="long"/>

    <attribute name="stateManageable"
               description="State management support for this managed object"
               is="true"
               type="boolean"
               writeable="false" />

    <attribute name="stateName"
               description="The name of the LifecycleState that this component is currently in"
               type="java.lang.String"
               writeable="false"/>

    <attribute name="swallowOutput"
               description="Flag to set to cause the system.out and system.err to be redirected to the logger when executing a servlet"
               type="boolean"/>

    <attribute name="tldScanTime"
               description="Time spend scanning jars for TLDs for this context"
               type="long"/>

    <attribute name="tldValidation"
               description="Should the parsing of *.tld files be performed by a validating parser?"
               type="boolean"/>

    <attribute name="unloadDelay"
               description="Amount of ms that the container will wait for servlets to unload"
               type="long"/>

    <attribute name="unpackWAR"
               description="Unpack WAR property"
               type="boolean"/>

    <attribute name="useHttpOnly"
               description="Indicates that session cookies should use HttpOnly"
               type="boolean"/>

    <attribute name="useNaming"
               description="Create a JNDI naming context for this application?"
               is="true"
               type="boolean"/>

    <attribute name="webappVersion"
               description="The version of this web application - used in parallel deployment to differentiate different versions of the same web application"
               type="java.lang.String"
               writeable="false"/>

    <attribute name="welcomeFiles"
               description="The welcome files for this context"
               type="[Ljava.lang.String;"
               writeable="false"/>

    <attribute name="workDir"
               description="The pathname to the work directory for this context"
               type="java.lang.String"/>

    <attribute name="xmlValidation"
               description="Should the parsing of web.xml and web-fragment.xml files be performed by a validating parser?"
               type="boolean"/>

    <attribute name="xmlNamespaceAware"
               description="Should the parsing of web.xml and web-fragment.xml files be performed by a namespace aware parser?"
               type="boolean"/>

    <operation name="addApplicationListener"
               description="Add a new Listener class name to the set of Listeners configured for this application."
               impact="ACTION"
               returnType="void">
      <parameter name="listener"
                 description="Java class name of a listener class"
                 type="java.lang.String"/>
    </operation>

    <operation name="addApplicationParameter"
               description="Add a new application parameter for this application."
               impact="ACTION"
               returnType="void">
      <parameter name="listener"
                 description="Java class name of a listener class"
                 type="java.lang.String"/>
    </operation>

    <operation name="addChild"
               description="Add a child to this Context"
               impact="ACTION"
               returnType="void">
      <parameter name="type"
                 description="Type(classname) of the new child to be added"
                 type="java.lang.String"/>
      <parameter name="name"
                 description="Name of the child to be added"
                 type="java.lang.String"/>
    </operation>

    <operation name="addInstanceListener"
               description="Add the classname of an InstanceListener to be added to each Wrapper appended to this Context."
               impact="ACTION"
               returnType="void">
      <parameter name="listener"
                 description="Java class name of an InstanceListener class"
                 type="java.lang.String"/>
    </operation>

    <operation name="addLifecycleListener"
               description="Add a lifecycle listener to this Context"
               impact="ACTION"
               returnType="void">
      <parameter name="type"
                 description="Type(classname) of the new lifecycle listener to be added"
                 type="java.lang.String"/>
    </operation>

    <operation name="addLocaleEncodingMappingParameter"
               description="Add a Locale Encoding Mapping"
               impact="ACTION"
               returnType="void">
      <parameter name="locale"
                 description="Locale to map an encoding for"
                 type="java.lang.String"/>
      <parameter name="encoding"
                 description="Encoding to be used for a give locale"
                 type="java.lang.String"/>
    </operation>

    <operation name="addMimeMapping"
               description="Add a new MIME mapping, replacing any existing mapping for the specified extension."
               impact="ACTION"
               returnType="void">
      <parameter name="extension"
                 description="Filename extension being mapped"
                 type="java.lang.String"/>
      <parameter name="mimeType"
                 description="Corresponding MIME type"
                 type="java.lang.String"/>
    </operation>

    <operation name="addParameter"
               description="Add a new context initialization parameter, replacing any existing value for the specified name."
               impact="ACTION"
               returnType="void">
      <parameter name="name"
                 description="Name of the new parameter"
                 type="java.lang.String"/>
      <parameter name="value"
                 description="Value of the new  parameter"
                 type="java.lang.String"/>
    </operation>

    <operation name="addRoleMapping"
               description="Add a security role reference for this web application."
               impact="ACTION"
               returnType="void">
      <parameter name="role"
                 description="Security role used in the application"
                 type="java.lang.String"/>
      <parameter name="link"
                 description="Actual security role to check for"
                 type="java.lang.String"/>
    </operation>

    <operation name="addSecurityRole"
               description="Add a new security role for this web application."
               impact="ACTION"
               returnType="void">
      <parameter name="role"
                 description="New security role"
                 type="java.lang.String"/>
    </operation>

    <operation name="addServletMapping"
               description="Add a new servlet mapping, replacing any existing mapping for the specified pattern."
               impact="ACTION"
               returnType="void">
      <parameter name="pattern"
                 description="URL pattern to be mapped"
                 type="java.lang.String"/>
      <parameter name="name"
                 description="Name of the corresponding servlet to execute"
                 type="java.lang.String"/>
    </operation>

    <operation name="addServletMapping"
               description="Add a new servlet mapping, replacing any existing mapping for the specified pattern."
               impact="ACTION"
               returnType="void">
      <parameter name="pattern"
                 description="URL pattern to be mapped"
                 type="java.lang.String"/>
      <parameter name="name"
                 description="Name of the corresponding servlet to execute"
                 type="java.lang.String"/>
      <parameter name="jspWildcard"
                 description="'true' if name identifies the JspServlet and pattern contains a wildcard; 'false' otherwise"
                 type="boolean"/>
    </operation>

    <operation name="addValve"
               description="Add a valve to this Context"
               impact="ACTION"
               returnType="java.lang.String">
      <parameter name="valveType"
                 description="Type(classname) of the new valve to be added"
                 type="java.lang.String"/>
    </operation>

    <operation name="addWatchedResource"
               description=" Add a resource which will be watched for reloading by the host auto deployer."
               impact="ACTION"
               returnType="void">
      <parameter name="name"
                 description="Path to the resource, either absolute or relative to docBase"
                 type="java.lang.String"/>
    </operation>

    <operation name="addWelcomeFile"
               description="Add a new welcome file to the set recognized by this Context."
               impact="ACTION"
               returnType="void">
      <parameter name="name"
                 description="New welcome file name"
                 type="java.lang.String"/>
    </operation>

    <operation name="addWrapperLifecycle"
               description="Add the classname of a LifecycleListener to be added to each Wrapper appended to this Context."
               impact="ACTION"
               returnType="void">
      <parameter name="listener"
                 description="Java class name of a LifecycleListener class"
                 type="java.lang.String"/>
    </operation>

    <operation name="addWrapperListener"
               description="Add the classname of a ContainerListener to be added to each Wrapper appended to this Context."
               impact="ACTION"
               returnType="void">
      <parameter name="listener"
                 description="Java class name of a ContainerListener class"
                 type="java.lang.String"/>
    </operation>

    <operation name="destroy"
               description="Destroy the context"
               impact="ACTION"
               returnType="void">
    </operation>

    <operation name="findApplicationListeners"
               description="Return the set of application listener class names configured for this application."
               impact="INFO"
               returnType="[Ljava.lang.String;">
    </operation>

    <operation name="findApplicationParameters"
               description="Return the set of application parameters for this application."
               impact="INFO"
               returnType="java.lang.String">
    </operation>

    <operation name="findConstraints"
               description="Return the set of security constraints for this web application. If there are none, a zero-length array is returned."
               impact="INFO"
               returnType="java.lang.String">
    </operation>

    <operation name="findContainerListenerNames"
               description="Return the set of container listener class names configured for this application."
               impact="INFO"
               returnType="[Ljava.lang.String;">
    </operation>

    <operation name="findErrorPage"
               description="Return the error page entry for the specified HTTP error code, if any; otherwise return null"
               impact="ACTION"
               returnType="java.lang.String">
      <parameter name="errorCode"
                 description="Error code to look up"
                 type="int"/>
    </operation>

    <operation name="findErrorPage"
               description="Return the error page entry for the specified Java exception type, if any; otherwise return null."
               impact="ACTION"
               returnType="java.lang.String">
      <parameter name="exceptionType"
                 description="Exception type to look up"
                 type="java.lang.String"/>
    </operation>

    <operation name="findErrorPages"
               description="Return the set of defined error pages for all specified error codes and exception types."
               impact="INFO"
               returnType="[Ljava.lang.String;">
    </operation>

    <operation name="findFilterDef"
               description="Return the filter definition for the specified filter name, if any; otherwise return null."
               impact="ACTION"
               returnType="java.lang.String">
      <parameter name="exceptionType"
                 description="Exception type to look up"
                 type="java.lang.String"/>
    </operation>

    <operation name="findFilterDefs"
               description="Return the set of defined filters for this Context."
               impact="INFO"
               returnType="[Ljava.lang.String;">
    </operation>

    <operation name="findFilterMaps"
               description="Return the set of filter mappings for this Context."
               impact="INFO"
               returnType="[Ljava.lang.String;">
    </operation>

    <operation name="findInstanceListeners"
               description="Return the set of InstanceListener classes that will be added to newly created Wrappers automatically."
               impact="INFO"
               returnType="[Ljava.lang.String;">
    </operation>

    <operation name="findLifecycleListenerNames"
               description="Return the set of lifecycle listener class names configured for this application."
               impact="INFO"
               returnType="[Ljava.lang.String;">
    </operation>

    <operation name="findMimeMapping"
               description="Return the MIME type to which the specified extension is mapped, if any; otherwise return null."
               impact="ACTION"
               returnType="java.lang.String">
      <parameter name="extension"
                 description="Extension to map to a MIME type"
                 type="java.lang.String"/>
    </operation>

    <operation name="findMimeMappings"
               description="Return the extensions for which MIME mappings are defined."
               impact="ACTION"
               returnType="[Ljava.lang.String;">
    </operation>

    <operation name="findParameter"
               description="Return the value for the specified context initialization parameter name, if any; otherwise return null."
               impact="ACTION"
               returnType="java.lang.String">
      <parameter name="name"
                 description="Name of the parameter to return"
                 type="java.lang.String"/>
    </operation>

    <operation name="findParameters"
               description="Return the names of all defined context initialization parameters for this Context."
               impact="ACTION"
               returnType="[Ljava.lang.String;">
    </operation>

    <operation name="findRoleMapping"
               description="For the given security role (as used by an application), return the corresponding role name (as defined by the underlying Realm) if there is one.  Otherwise, return the specified role unchanged."
               impact="ACTION"
               returnType="java.lang.String">
      <parameter name="role"
                 description="Security role to map"
                 type="java.lang.String"/>
    </operation>

    <operation name="findSecurityRole"
               description="Return 'true' if the specified security role is defined for this application; otherwise return 'false'."
               impact="ACTION"
               returnType="boolean">
      <parameter name="role"
                 description="Security role to verify"
                 type="java.lang.String"/>
    </operation>

    <operation name="findSecurityRoles"
               description="Return the security roles defined for this application."
               impact="ACTION"
               returnType="[Ljava.lang.String;">
    </operation>

    <operation name="findServletMapping"
               description="Return the servlet name mapped by the specified pattern.."
               impact="ACTION"
               returnType="java.lang.String">
      <parameter name="pattern"
                 description="Pattern for which a mapping is requested"
                 type="java.lang.String"/>
    </operation>

    <operation name="findServletMappings"
               description="Return the patterns of all defined servlet mappings for this Context."
               impact="ACTION"
               returnType="[Ljava.lang.String;">
    </operation>

    <operation name="findStatusPage"
               description="Return the context-relative URI of the error page for the specified HTTP status code."
               impact="ACTION"
               returnType="java.lang.String">
      <parameter name="status"
                 description="HTTP status code to look up"
                 type="int"/>
    </operation>

    <operation name="findStatusPages"
               description="Return the set of HTTP status codes for which error pages have been specified."
               impact="ACTION"
               returnType="[Lint">
    </operation>

    <operation name="findWatchedResources"
               description="Return the set of watched resources for this Context."
               impact="ACTION"
               returnType="[Ljava.lang.String;">
    </operation>

    <operation name="findWelcomeFile"
               description="Return 'true' if the specified welcome file is defined for this Context; otherwise return 'false'."
               impact="ACTION"
               returnType="boolean">
      <parameter name="name"
                 description="Welcome file to verify"
                 type="java.lang.String"/>
    </operation>

    <operation name="findWelcomeFiles"
               description="Return the set of welcome files defined for this Context."
               impact="ACTION"
               returnType="[Ljava.lang.String;">
    </operation>

    <operation name="findWrapperLifecycles"
               description="Return the set of LifecycleListener classes that will be added to newly created Wrappers automatically."
               impact="ACTION"
               returnType="[Ljava.lang.String;">
    </operation>

    <operation name="findWrapperListeners"
               description="Return the set of ContainerListener classes that will be added to newly created Wrappers automatically."
               impact="ACTION"
               returnType="[Ljava.lang.String;">
    </operation>

    <operation name="init"
               description="Register the context into the running server"
               impact="ACTION"
               returnType="void">
    </operation>

    <operation name="start"
               description="Start the context"
               impact="ACTION"
               returnType="void">
    </operation>

    <operation name="stop"
               description="Stop the context"
               impact="ACTION"
               returnType="void">
    </operation>

    <operation name="reload"
               description="Reload the webapplication"
               impact="ACTION"
               returnType="void">
    </operation>

    <operation name="removeApplicationListener"
               description="Remove the specified application listener class from the set of listeners for this application."
               impact="ACTION"
               returnType="void">
      <parameter name="listener"
                 description="Java class name of the listener to be removed"
                 type="java.lang.String"/>
    </operation>

    <operation name="removeApplicationParameter"
               description="Remove the application parameter with the specified name from the set for this application."
               impact="ACTION"
               returnType="void">
      <parameter name="name"
                 description="Name of the application parameter to remove"
                 type="java.lang.String"/>
    </operation>

    <operation name="removeChild"
               description="Remove a child from this Context"
               impact="ACTION"
               returnType="void">
      <parameter name="name"
                 description="Name of the existing child Container to be removed"
                 type="java.lang.String"/>
    </operation>

    <operation name="removeInstanceListener"
               description="Remove the application parameter with the specified name from the set for this application."
               impact="ACTION"
               returnType="void">
      <parameter name="listener"
                 description="Class name of an InstanceListener class to be removed"
                 type="java.lang.String"/>
    </operation>

    <operation name="removeLifecycleListeners"
               description="Removes lifecycle listeners of given class type from this Context"
               impact="ACTION"
               returnType="void">
      <parameter name="listener"
                 description="Type(classname) of the lifecycle listeners to be removed"
                 type="java.lang.String"/>
    </operation>

    <operation name="removeMimeMapping"
               description="Remove the MIME mapping for the specified extension, if it exists; otherwise, no action is taken.."
               impact="ACTION"
               returnType="void">
      <parameter name="extension"
                 description="Extension to remove the mapping for"
                 type="java.lang.String"/>
    </operation>

    <operation name="removeParameter"
               description="Remove the context initialization parameter with the specified name, if it exists; otherwise, no action is taken."
               impact="ACTION"
               returnType="void">
      <parameter name="name"
                 description="Name of the parameter to remove"
                 type="java.lang.String"/>
    </operation>

    <operation name="removeRoleMapping"
               description="Remove any security role reference for the specified name"
               impact="ACTION"
               returnType="void">
      <parameter name="role"
                 description="Security role (as used in the application) to remove"
                 type="java.lang.String"/>
    </operation>

    <operation name="removeSecurityRole"
               description="Remove any security role with the specified name."
               impact="ACTION"
               returnType="void">
      <parameter name="role"
                 description="Security role to remove"
                 type="java.lang.String"/>
    </operation>

    <operation name="removeServletMapping"
               description="Remove any servlet mapping for the specified pattern, if it exists; otherwise, no action is taken."
               impact="ACTION"
               returnType="void">
      <parameter name="pattern"
                 description="URL pattern of the mapping to remove"
                 type="java.lang.String"/>
    </operation>

    <operation name="removeValve"
               description="Remove a valve from this Context"
               impact="ACTION"
               returnType="void">
      <parameter name="valveName"
                 description="Objectname of the valve to be removed"
                 type="java.lang.String"/>
    </operation>

    <operation name="removeWatchedResource"
               description="Remove the specified watched resource name from the list associated with this Context."
               impact="ACTION"
               returnType="void">
      <parameter name="name"
                 description="Name of the watched resource to be removed"
                 type="java.lang.String"/>
    </operation>

    <operation name="removeWelcomeFile"
               description="Remove the specified welcome file name from the list recognized by this Context."
               impact="ACTION"
               returnType="void">
      <parameter name="name"
                 description="Name of the welcome file to be removed"
                 type="java.lang.String"/>
    </operation>

    <operation name="removeWrapperLifecycle"
               description="Remove a class name from the set of LifecycleListener classes that will be added to newly created Wrappers."
               impact="ACTION"
               returnType="void">
      <parameter name="listener"
                 description="Class name of a LifecycleListener class to be removed"
                 type="java.lang.String"/>
    </operation>

    <operation name="removeWrapperListener"
               description="Remove a class name from the set of ContainerListener classes that will be added to newly created Wrappers."
               impact="ACTION"
               returnType="void">
      <parameter name="listener"
                 description="Class name of a ContainerListener class to be removed"
                 type="java.lang.String"/>
    </operation>

    <operation name="start"
               description="Start"
               impact="ACTION"
               returnType="void" />

    <operation name="stop"
               description="Stop"
               impact="ACTION"
               returnType="void" />

  </mbean>

  <mbean name="StandardContextValve"
         description="Valve that implements the default basic behavior for the
         StandardContext container implementation"
         domain="Catalina"
         group="Valve"
         type="org.apache.catalina.core.StandardContextValve">

    <attribute name="asyncSupported"
               description="Does this valve support async reporting?"
               is="true"
               type="boolean"/>

    <attribute name="className"
               description="Fully qualified class name of the managed object"
               type="java.lang.String"
               writeable="false"/>

    <attribute name="stateName"
               description="The name of the LifecycleState that this component is currently in"
               type="java.lang.String"
               writeable="false"/>
  </mbean>

  <mbean name="StandardEngine"
         type="org.apache.catalina.core.StandardEngine"
         description="Standard Engine Component"
         domain="Catalina"
         group="Engine"
         className="org.apache.catalina.mbeans.ContainerMBean">

    <attribute name="backgroundProcessorDelay"
               description="The processor delay for this component."
               type="int"/>

    <attribute name="catalinaBase"
               description="Base (instance) directory for this Engine, typically same as catalina.base system property"
               type="java.lang.String"/>

    <attribute name="defaultHost"
               description="Name of the default Host for this Engine"
               type="java.lang.String"/>

    <attribute name="jvmRoute"
               description="Route used for load balancing"
               type="java.lang.String"/>

    <attribute name="managedResource"
               description="The managed resource this MBean is associated with"
               type="java.lang.Object"/>

    <attribute name="name"
               description="Unique name of this Engine"
               type="java.lang.String"/>

    <attribute name="realm"
               description="Associated realm."
               type="org.apache.catalina.Realm" />

    <attribute name="startChildren"
               description="Will children be started automatically when they are added."
               type="boolean"/>

    <attribute name="startStopThreads"
               description="The number of threads to use when starting and stopping child Hosts"
               type="int"/>

    <attribute name="stateName"
               description="The name of the LifecycleState that this component is currently in"
               type="java.lang.String"
               writeable="false"/>

    <operation name="addChild"
               description="Add a virtual host"
               impact="ACTION"
               returnType="void">
      <parameter name="type"
                 description="Type(classname) of the new child to be added"
                 type="java.lang.String"/>
      <parameter name="name"
                 description="Name of the child to be added"
                 type="java.lang.String"/>
    </operation>

    <operation name="addLifecycleListener"
               description="Add a lifecycle listener to this Engine"
               impact="ACTION"
               returnType="void">
      <parameter name="type"
                 description="Type(classname) of the new lifecycle listener to be added"
                 type="java.lang.String"/>
    </operation>

    <operation name="addValve"
               description="Add a valve to this Engine"
               impact="ACTION"
               returnType="java.lang.String">
      <parameter name="valveType"
                 description="Type(classname) of the new valve to be added"
                 type="java.lang.String"/>
    </operation>

    <operation name="destroy"
               description="Destroy"
               impact="ACTION"
               returnType="void" />

    <operation name="init"
               description="Init"
               impact="ACTION"
               returnType="void" />

    <operation name="removeChild"
               description="Remove a child(Host) from this Engine"
               impact="ACTION"
               returnType="void">
      <parameter name="name"
                 description="Name of the existing child Container to be removed"
                 type="java.lang.String"/>
    </operation>

    <operation name="removeLifecycleListeners"
               description="Removes lifecycle listeners of given class type from this Engine"
               impact="ACTION"
               returnType="void">
      <parameter name="listener"
                 description="Type(classname) of the lifecycle listeners to be removed"
                 type="java.lang.String"/>
    </operation>

    <operation name="removeValve"
               description="Remove a valve from this Engine"
               impact="ACTION"
               returnType="void">
      <parameter name="valveName"
                 description="Objectname of the valve to be removed"
                 type="java.lang.String"/>
    </operation>

    <operation name="start"
               description="Start"
               impact="ACTION"
               returnType="void" />

    <operation name="stop"
               description="Stop"
               impact="ACTION"
               returnType="void" />

  </mbean>


  <mbean name="StandardEngineValve"
         description="Valve that implements the default basic behavior for the
         StandardEngine container implementation"
         domain="Catalina"
         group="Valve"
         type="org.apache.catalina.core.StandardEngineValve">

    <attribute name="asyncSupported"
               description="Does this valve support async reporting?"
               is="true"
               type="boolean"/>

    <attribute name="className"
               description="Fully qualified class name of the managed object"
               type="java.lang.String"
               writeable="false"/>

    <attribute name="stateName"
               description="The name of the LifecycleState that this component is currently in"
               type="java.lang.String"
               writeable="false"/>
  </mbean>

  <mbean name="StandardHost"
         description="Standard Host Component"
         domain="Catalina"
         group="Host"
         type="org.apache.catalina.core.StandardHost"
         className="org.apache.catalina.mbeans.ContainerMBean">

    <attribute name="aliases"
               description="Host aliases"
               type="[Ljava.lang.String;"/>

    <attribute name="appBase"
               description="The application root for this Host"
               type="java.lang.String"/>

    <attribute name="autoDeploy"
               description="The auto deploy flag for this Host"
               type="boolean"/>

    <attribute name="backgroundProcessorDelay"
               description="The processor delay for this component."
               type="int"/>

    <attribute name="children"
               description="Object names of all children"
               type="[Ljavax.management.ObjectName;"/>

    <attribute name="configClass"
               description="The configuration class for contexts"
               type="java.lang.String"/>

    <attribute name="contextClass"
               description="The Java class name of the default Context implementation class for deployed web applications."
               type="java.lang.String"
               writeable="false" />

    <attribute name="copyXML"
               description="Should XML files be copied to $CATALINA_BASE/conf/{engine}/{host} by default when a web application is deployed?"
               is="true"
               type="boolean"/>

    <attribute name="createDirs"
               description="Should we create directories upon startup for appBase and xmlBase? "
               type="boolean"/>

    <attribute name="deployIgnore"
               description="Paths within appBase ignored for automatic deployment"
               type="java.lang.String"/>

    <attribute name="deployOnStartup"
               description="The deploy on startup flag for this Host"
               type="boolean"/>

    <attribute name="deployXML"
               description="deploy Context XML config files property"
               is="true"
               type="boolean"/>

    <attribute name="errorReportValveClass"
               description="The Java class name of the default error reporter implementation class for deployed web applications."
               type="java.lang.String"
               writeable="false" />

    <attribute name="managedResource"
               description="The managed resource this MBean is associated with"
               type="java.lang.Object"/>

    <attribute name="name"
               description="Unique name of this Host"
               type="java.lang.String"/>

    <attribute name="realm"
               description="Associated realm."
               type="org.apache.catalina.Realm" />

    <attribute name="startChildren"
               description="Will children be started automatically when they are added?"
               type="boolean"/>

    <attribute name="startStopThreads"
               description="The number of threads to use when starting, stopping and deploying child Contexts"
               type="int"/>

    <attribute name="stateName"
               description="The name of the LifecycleState that this component is currently in"
               type="java.lang.String"
               writeable="false"/>

    <attribute name="undeployOldVersions"
               description="Determines if old versions of applications deployed using parallel deployment are automatically undeployed when no longer used. Requires autoDeploy to be enabled."
               type="boolean"/>

    <attribute name="unpackWARs"
               description="Unpack WARs property"
               is="true"
               type="boolean"/>

    <attribute name="valveNames"
               description="Return the MBean Names of the Valves associated with this Host"
               type="[Ljava.lang.String;"/>

    <attribute name="workDir"
               description="Work Directory base for applications"
               type="java.lang.String"/>

    <attribute name="xmlBase"
               description="The XML root for this Host."
               type="java.lang.String"/>

    <operation name="addAlias"
               description="Add an alias name that should be mapped to this Host"
               impact="ACTION"
               returnType="void">
      <parameter name="alias"
                 description="The alias to be added"
                 type="java.lang.String"/>
    </operation>

    <operation name="addChild"
               description="Add a child(Context) to this Host"
               impact="ACTION"
               returnType="void">
      <parameter name="type"
                 description="Type(classname) of the new child to be added"
                 type="java.lang.String"/>
      <parameter name="name"
                 description="Name of the child to be added"
                 type="java.lang.String"/>
    </operation>

    <operation name="addLifecycleListener"
               description="Add a lifecycle listener to this Host"
               impact="ACTION"
               returnType="void">
      <parameter name="type"
                 description="Type(classname) of the new lifecycle listener to be added"
                 type="java.lang.String"/>
    </operation>

    <operation name="addValve"
               description="Add a valve to this Host"
               impact="ACTION"
               returnType="java.lang.String">
      <parameter name="valveType"
                 description="Type(classname) of the new valve to be added"
                 type="java.lang.String"/>
    </operation>

    <operation name="destroy"
               description="Destroy"
               impact="ACTION"
               returnType="void" />

    <operation name="findAliases"
               description="Return the set of alias names for this Host"
               impact="INFO"
               returnType="[Ljava.lang.String;"/>

    <operation name="findReloadedContextMemoryLeaks"
               description="Provide a list of contexts that have leaked memory on reload. This will attempt to force a full garbage collection. Use with extreme caution on production systems."
               impact="ACTION"
               returnType="[Ljava.lang.String;" />

    <operation name="init"
               description="Init"
               impact="ACTION"
               returnType="void" />

    <operation name="removeAlias"
               description="Remove the specified alias name from the aliases for this  Host"
               impact="ACTION"
               returnType="void">
      <parameter name="alias"
                 description="Alias name to be removed"
                 type="java.lang.String"/>
    </operation>

    <operation name="removeChild"
               description="Remove a child(Context) from this Host"
               impact="ACTION"
               returnType="void">
      <parameter name="name"
                 description="Name of the existing child Container to be removed"
                 type="java.lang.String"/>
    </operation>

    <operation name="removeLifecycleListeners"
               description="Removes lifecycle listeners of given class type from this Host"
               impact="ACTION"
               returnType="void">
      <parameter name="listener"
                 description="Type(classname) of the lifecycle listeners to be removed"
                 type="java.lang.String"/>
    </operation>

    <operation name="removeValve"
               description="Remove a valve from this Host"
               impact="ACTION"
               returnType="void">
      <parameter name="valveName"
                 description="Objectname of the valve to be removed"
                 type="java.lang.String"/>
    </operation>

    <operation name="start"
               description="Start"
               impact="ACTION"
               returnType="void" />

    <operation name="stop"
               description="Stop"
               impact="ACTION"
               returnType="void" />

  </mbean>

  <mbean name="StandardHostValve"
         description="Valve that implements the default basic behavior for the
         StandardHost container implementation"
         domain="Catalina"
         group="Valve"
         type="org.apache.catalina.core.StandardHostValve">

    <attribute name="asyncSupported"
               description="Does this valve support async reporting?"
               is="true"
               type="boolean"/>

    <attribute name="className"
               description="Fully qualified class name of the managed object"
               type="java.lang.String"
               writeable="false"/>

    <attribute name="stateName"
               description="The name of the LifecycleState that this component is currently in"
               type="java.lang.String"
               writeable="false"/>
  </mbean>

  <mbean name="StandardServer"
         description="Standard Server Component"
         domain="Catalina"
         group="Server"
         type="org.apache.catalina.core.StandardServer">

    <attribute name="address"
               description="The address on which we wait for shutdown commands."
               type="java.lang.String"/>

    <attribute name="managedResource"
               description="The managed resource this MBean is associated with"
               type="java.lang.Object"/>

    <attribute name="port"
               description="TCP port for shutdown messages"
               type="int"/>

    <attribute name="serverInfo"
               description="Tomcat server release identifier"
               type="java.lang.String"
               writeable="false"/>

    <attribute name="serviceNames"
               description="Object names of all services we know about"
               type="[Ljavax.management.ObjectName;"
               writeable="false" />

    <attribute name="shutdown"
               description="Shutdown password"
               type="java.lang.String"/>

    <attribute name="stateName"
               description="The name of the LifecycleState that this component is currently in"
               type="java.lang.String"
               writeable="false"/>

    <operation name="await"
               description="Wait for the shutdown message"
               impact="ACTION"
               returnType="void" />

    <operation name="storeConfig"
               description="Save current state to server.xml file"
               impact="ACTION"
               returnType="void">

    </operation>

  </mbean>


  <mbean name="StandardService"
         description="Standard Service Component"
         domain="Catalina"
         group="Service"
         type="org.apache.catalina.core.StandardService"
         className="org.apache.catalina.mbeans.ServiceMBean">

    <attribute name="connectorNames"
               description="ObjectNames of the connectors"
               type="[Ljavax.management.ObjectName;"
               writeable="false" />

    <attribute name="managedResource"
               description="The managed resource this MBean is associated with"
               type="java.lang.Object"/>

    <attribute name="name"
               description="Unique name of this Service"
               type="java.lang.String"/>

    <attribute name="stateName"
               description="The name of the LifecycleState that this component is currently in"
               type="java.lang.String"
               writeable="false"/>

    <operation name="addConnector"
               description="Add a new connector"
               impact="ACTION"
               returnType="void">
      <parameter name="address"
                 description="The IP address on which to bind"
                 type="java.lang.String"/>
      <parameter name="port"
                 description="TCP port number to listen on"
                 type="int"/>
      <parameter name="isAjp"
                 description="Create a AJP/1.3 Connector"
                 type="boolean"/>
      <parameter name="isSSL"
                 description="Create a secure Connector"
                 type="boolean"/>
    </operation>

    <operation name="addExecutor"
               description="Adds a named executor to the service"
               impact="ACTION"
               returnType="void">
      <parameter name="type"
                 description="Classname of the Executor to be added"
                 type="java.lang.String"/>
    </operation>

    <operation name="findConnectors"
               description="Find and return the set of Connectors associated with this Service"
               impact="ACTION"
               returnType="[Ljava.lang.String;">
    </operation>

    <operation name="findExecutors"
               description="Retrieves all executors"
               impact="ACTION"
               returnType="[Ljava.lang.String;">
    </operation>

    <operation name="getExecutor"
               description="Retrieves executor by name"
               impact="ACTION"
               returnType="java.lang.String">
      <parameter name="name"
                 description="Name of the executor to be retrieved"
                 type="java.lang.String"/>
    </operation>

    <operation name="start"
               description="Start"
               impact="ACTION"
               returnType="void" />

    <operation name="stop"
               description="Stop"
               impact="ACTION"
               returnType="void" />
  </mbean>

  <mbean name="StandardThreadExecutor"
         description="Standard implementation of a thread pool"
         domain="Catalina"
         group="Executor"
         type="org.apache.catalina.core.StandardThreadExecutor">

    <attribute name="activeCount"
               description="Number of threads currently processing a task"
               type="int"
               writeable="false" />

    <attribute name="completedTaskCount"
               description="Number of tasks completed by the executor"
               type="int"
               writeable="false" />

    <attribute name="corePoolSize"
               description="Core size of the thread pool"
               type="int"
               writeable="false" />

    <attribute name="daemon"
               description="Run threads in daemon or non-daemon state?"
               is="true"
               type="boolean"/>

    <attribute name="largestPoolSize"
               description="Peak number of threads"
               type="int"
               writeable="false" />

    <attribute name="maxIdleTime"
               description="Max number of milliseconds a thread can be idle before it can be shutdown"
               type="int"/>

    <attribute name="maxQueueSize"
               description="Maximum number of tasks for the pending task queue"
               type="int"/>

    <attribute name="maxThreads"
               description="Maximum number of allocated threads"
               type="int"/>

    <attribute name="minSpareThreads"
               description="Minimum number of allocated threads"
               type="int"/>

    <attribute name="name"
               description="Unique name of this Executor"
               type="java.lang.String"/>

    <attribute name="namePrefix"
               description="Name prefix for thread names created by this executor"
               type="java.lang.String"/>

    <attribute name="poolSize"
               description="Number of threads in the pool"
               type="int"
               writeable="false" />

    <attribute name="prestartminSpareThreads"
               description="Prestart threads?"
               is="true"
               type="boolean"/>

    <attribute name="queueSize"
               description="Number of tasks waiting to be processed"
               type="int"
          writeable="false" />

    <attribute name="stateName"
               description="The name of the LifecycleState that this component is currently in"
               type="java.lang.String"
               writeable="false"/>

    <attribute name="threadPriority"
               description="The thread priority for threads in this thread pool"
               type="int"/>

    <attribute name="threadRenewalDelay"
               description="After a context is stopped, threads in the pool are renewed. To avoid renewing all threads at the same time, this delay is observed between 2 threads being renewed. Value is in ms, default value is 1000ms. If negative, threads are not renewed."
               type="long"/>

  </mbean>

  <mbean name="StandardWrapper"
         description="Wrapper that represents an individual servlet definition"
         domain="Catalina"
         group="Wrapper"
         type="org.apache.catalina.core.StandardWrapper"
         className="org.apache.catalina.mbeans.ContainerMBean">

    <attribute name="asyncSupported"
               description="Async support"
               is="true"
               type="boolean"/>

    <attribute name="available"
               description="The date and time at which this servlet will become available (in milliseconds since the epoch), or zero if the servlet is available. If this value equals Long.MAX_VALUE, the unavailability of this servlet is considered permanent."
               type="long"/>

    <attribute name="backgroundProcessorDelay"
               description="The processor delay for this component."
               type="int" />

    <attribute name="classLoadTime"
               description="Time taken to load the Servlet class"
               type="int"
               writeable="false" />

    <attribute name="countAllocated"
               description="The count of allocations that are currently active (even if they  are for the same instance, as will be true on a non-STM servlet)."
               type="int"
               writeable="false" />

    <attribute name="errorCount"
               description="Error count"
               type="int"
               writeable="false" />

    <attribute name="loadOnStartup"
               description="The load-on-startup order value (negative value means load on first call) for this servlet."
               type="int"/>

    <attribute name="loadTime"
               description="Time taken to load and initialise the Servlet"
               type="long"
               writeable="false" />

    <attribute name="maxTime"
               description="Maximum processing time of a request"
               type="long"
               writeable="false" />

    <attribute name="maxInstances"
               description="Maximum number of STM instances."
               type="int" />

    <attribute name="minTime"
               description="Minimum processing time of a request"
               type="long"
               writeable="false" />

    <attribute name="objectName"
               description="Name of the object"
               type="java.lang.String"/>

    <attribute name="processingTime"
               description="Total execution time of the servlet's service method"
               type="long"
               writeable="false" />

    <attribute name="requestCount"
               description="Number of requests processed by this wrapper"
               type="int"
               writeable="false" />

    <attribute name="runAs"
               description="The run-as identity for this servlet."
               type="java.lang.String"/>

    <attribute name="servletClass"
               description="The run-as identity for this servlet."
               type="java.lang.String"
               writeable="false" />

    <attribute name="singleThreadModel"
               description="Does this servlet implement the SingleThreadModel interface?"
               type="boolean"
               is="true"
               writeable="false" />

    <attribute name="stateManageable"
               description="State management support for this managed object"
               is="true"
               type="boolean"
               writeable="false"/>

    <attribute name="stateName"
               description="The name of the LifecycleState that this component is currently in"
               type="java.lang.String"
               writeable="false"/>

    <operation name="addInitParameter"
               description="Add a valve to this Wrapper"
               impact="ACTION"
               returnType="void">
      <parameter name="name"
                 description="Name of this initialization parameter to add"
                 type="java.lang.String"/>
      <parameter name="value"
                 description="Value of this initialization parameter to add"
                 type="java.lang.String"/>
    </operation>

    <operation name="addLifecycleListener"
               description="Add a lifecycle listener to this Wrapper"
               impact="ACTION"
               returnType="void">
      <parameter name="type"
                 description="Type(classname) of the new lifecycle listener to be added"
                 type="java.lang.String"/>
    </operation>

    <operation name="addMapping"
               description="Add a mapping associated with the Wrapper."
               impact="ACTION"
               returnType="void">
      <parameter name="mapping"
                 description="The new wrapper mapping"
                 type="java.lang.String"/>
    </operation>

    <operation name="addSecurityReference"
               description="Add a new security role reference record to the set of records for this servlet."
               impact="ACTION"
               returnType="void">
      <parameter name="name"
                 description="Role name used within this servlet"
                 type="java.lang.String"/>
      <parameter name="link"
                 description="Role name used within the web application"
                 type="java.lang.String"/>
    </operation>

    <operation name="addValve"
               description="Add a valve to this Wrapper"
               impact="ACTION"
               returnType="java.lang.String">
      <parameter name="valveType"
                 description="Type(classname) of the new valve to be added"
                 type="java.lang.String"/>
    </operation>

    <operation name="findInitParameter"
               description="Add a mapping associated with the Wrapper."
               impact="ACTION"
               returnType="void">
      <parameter name="mapping"
                 description="The new wrapper mapping"
                 type="java.lang.String"/>
    </operation>

    <operation name="findInitParameters"
               description="Return the names of all defined initialization parameters for this servlet."
               impact="INFO"
               returnType="[Ljava.lang.String;">
    </operation>

    <operation name="findMappings"
               description="Return the mappings associated with this wrapper"
               impact="INFO"
               returnType="[Ljava.lang.String;">
    </operation>

    <operation name="findMappingObject"
               description="Return an object which may be utilized for mapping to this component"
               impact="INFO"
               returnType="org.apache.catalina.Wrapper">
    </operation>

    <operation name="findSecurityReference"
               description="Return the security role link for the specified security role reference name."
               impact="ACTION"
               returnType="java.lang.String">
      <parameter name="name"
                 description="Security role reference used within this servle"
                 type="java.lang.String"/>
    </operation>

    <operation name="findSecurityReferences"
               description="Return the set of security role reference names associated with this servlet"
               impact="INFO"
               returnType="[Ljava.lang.String;">
    </operation>

    <operation name="removeInitParameter"
               description="Remove the specified initialization parameter from this servlet."
               impact="ACTION"
               returnType="void">
      <parameter name="name"
                 description="Name of the initialization parameter to remove"
                 type="java.lang.String"/>
    </operation>

    <operation name="removeLifecycleListeners"
               description="Removes lifecycle listeners of given class type from this Wrapper"
               impact="ACTION"
               returnType="void">
      <parameter name="listener"
                 description="Type(classname) of the lifecycle listeners to be removed"
                 type="java.lang.String"/>
    </operation>

    <operation name="removeMapping"
               description="Remove a mapping associated with the wrapper."
               impact="ACTION"
               returnType="void">
      <parameter name="mapping"
                 description="The pattern to remove"
                 type="java.lang.String"/>
    </operation>

    <operation name="removeSecurityReference"
               description="Remove any security role reference for the specified role name."
               impact="ACTION"
               returnType="void">
      <parameter name="name"
                 description="Security role used within this servlet to be removeds"
                 type="java.lang.String"/>
    </operation>

    <operation name="removeValve"
               description="Remove a valve from this Wrapper"
               impact="ACTION"
               returnType="void">
      <parameter name="valveName"
                 description="Objectname of the valve to be removed"
                 type="java.lang.String"/>
    </operation>

  </mbean>

  <mbean name="StandardWrapperValve"
         description="Valve that implements the default basic behavior for the StandardWrapper container implementation"
         domain="Catalina"
         group="Valve"
         type="org.apache.catalina.core.StandardWrapperValve">

     <attribute name="asyncSupported"
                description="Does this valve support async reporting?"
                type="boolean"/>

     <attribute name="className"
                description="Fully qualified class name of the managed object"
                type="java.lang.String"
                writeable="false"/>

    <attribute name="stateName"
               description="The name of the LifecycleState that this component is currently in"
               type="java.lang.String"
               writeable="false"/>
  </mbean>

</mbeans-descriptors>
