<?xml version="1.0"?>
<mbeans-descriptors>

  <mbean         name="StoreConfig"
          description="Implementation of a store server.xml config"
               domain="Catalina"
                group="StoreConfig"
                 type="org.apache.catalina.storeconfig.StoreConfig">
    <operation name="storeConfig" 
               description="Store Server" 
               impact="ACTION" returnType="void" />
    <operation name="storeServer" 
               description="Store Server from ObjectName" 
               impact="ACTION" returnType="void" >
         <parameter name="objectname"
                 description="Objectname from Server"
                 type="java.lang.String"
                 default="Catalina:type=Server"/>
         <parameter name="backup"
                 description="store Context with backup"
                 type="boolean"/>
         <parameter name="externalAllowed"
                 description="store all Context external that have a configFile"
                 type="boolean"/>
    </operation>

<!--
   Catalina:j2eeType=WebModule,name=//localhost/manager,J2EEApplication=none,J2EEServer=none
-->
   <operation name="storeContext" 
               description="Store Context from ObjectName" 
               impact="ACTION" returnType="void" >
         <parameter name="objectname"
                 description="ObjectName from Context"
                 type="java.lang.String"/>
         <parameter name="backup"
                 description="store with Backup"
                 type="boolean"/>
         <parameter name="externalAllowed"
                 description="store all or store only internal server.xml context (configFile == null)"
                 type="boolean"/>
    </operation>           
    <operation name="store" 
               description="Store Server" 
               impact="ACTION" returnType="void" >
          <parameter name="server"
                 description="Server"
                 type="org.apache.catalina.Server"
                 />
    </operation>           
    <operation name="store" 
               description="Store Context" 
               impact="ACTION" returnType="void" >
          <parameter name="context"
                 description="Context"
                 type="org.apache.catalina.context"/>
    </operation>           
    <operation name="store" 
               description="Store Host" 
               impact="ACTION" returnType="void" >
          <parameter name="host"
                 description="Host"
                 type="org.apache.catalina.Host"/>
    </operation>           
    <operation name="store" 
               description="Store Service" 
               impact="ACTION" returnType="void" >
          <parameter name="service"
                 description="service"
                 type="org.apache.catalina.Service"/>
    </operation>           
 
  </mbean>

</mbeans-descriptors>


