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

  <mbean         name="StandardManager"
          description="Standard implementation of the Manager interface"
               domain="Catalina"
                group="Manager"
                 type="org.apache.catalina.session.StandardManager">

    <attribute   name="algorithm"
          description="The message digest algorithm to be used when generating
                       session identifiers"
                 type="java.lang.String"/>


    <attribute   name="randomFile"
          description="File source of random - /dev/urandom or a pipe"
                 type="java.lang.String"/>

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

    <attribute   name="distributable"
          description="The distributable flag for Sessions created by this
                       Manager"
                 type="boolean"/>

    <attribute   name="entropy"
          description="A String initialization parameter used to increase the
                       entropy of the initialization of our random number
                       generator"
                 type="java.lang.String"/>

    <attribute   name="maxActiveSessions"
          description="The maximum number of active Sessions allowed, or -1
                       for no limit"
                 type="int"/>

    <attribute   name="maxInactiveInterval"
          description="The default maximum inactive interval for Sessions
                       created by this Manager"
                 type="int"/>

    <attribute name="processExpiresFrequency"
               description="The frequency of the manager checks (expiration and passivation)"
               type="int"/>
               
    <attribute   name="sessionIdLength"
          description="The session id length (in bytes) of Sessions
                       created by this Manager"
                 type="int"/>

    <attribute   name="name"
          description="The descriptive name of this Manager implementation
                       (for logging)"
                 type="java.lang.String"
            writeable="false"/>

    <attribute   name="pathname"
          description="Path name of the disk file in which active sessions"
                 type="java.lang.String"/>

    <attribute   name="activeSessions"
          description="Number of active sessions at this moment"
                 type="int" 
            writeable="false"/>

    <attribute   name="sessionCounter"
          description="Total number of sessions created by this manager"
                 type="int" />

    <attribute   name="maxActive"
          description="Maximum number of active sessions so far"
                 type="int" />

    <attribute   name="sessionMaxAliveTime"
          description="Longest time an expired session had been alive"
                 type="int" />

    <attribute   name="sessionAverageAliveTime"
          description="Average time an expired session had been alive"
                 type="int" />

    <attribute   name="rejectedSessions"
          description="Number of sessions we rejected due to maxActive beeing reached"
                 type="int" />

    <attribute   name="expiredSessions"
          description="Number of sessions that expired ( doesn't include explicit invalidations )"
                 type="int" />

    <attribute   name="processingTime"
          description="Time spent doing housekeeping and expiration"
                 type="long" />

    <attribute   name="duplicates"
          description="Number of duplicated session ids generated"
                 type="int" />

    <operation   name="listSessionIds"
          description="Return the list of active session ids"
               impact="ACTION"
           returnType="java.lang.String">
    </operation>

    <operation   name="getSessionAttribute"
          description="Return a session attribute"
               impact="ACTION"
           returnType="java.lang.String">
      <parameter name="sessionId"
          description="Id of the session"
                 type="java.lang.String"/>
      <parameter name="key"
          description="key of the attribute"
                 type="java.lang.String"/>
    </operation>

    <operation   name="getSession"
          description="Return all sessions attributes and values"
               impact="ACTION"
           returnType="java.util.HashMap">
      <parameter name="sessionId"
          description="Id of the session"
                 type="java.lang.String"/>
    </operation>

    <operation   name="expireSession"
          description="Expire a session"
               impact="ACTION"
           returnType="void">
      <parameter name="sessionId"
          description="Id of the session"
                 type="java.lang.String"/>
    </operation>

    <operation   name="getLastAccessedTime"
          description="Get the last access time"
               impact="ACTION"
           returnType="java.lang.String">
      <parameter name="sessionId"
          description="Id of the session"
                 type="java.lang.String"/>
    </operation>

  </mbean>

  <mbean         name="PersistentManager"
          description="Persistent Manager"
               domain="Catalina"
                group="Manager"
                 type="org.apache.catalina.session.PersistentManager">

    <attribute   name="algorithm"
          description="The message digest algorithm to be used when generating
                       session identifiers"
                 type="java.lang.String"/>

    <attribute   name="randomFile"
          description="File source of random - /dev/urandom or a pipe"
                 type="java.lang.String"/>

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

    <attribute   name="distributable"
          description="The distributable flag for Sessions created by this
                       Manager"
                 type="boolean"/>

    <attribute   name="entropy"
          description="A String initialization parameter used to increase the
                       entropy of the initialization of our random number
                       generator"
                 type="java.lang.String"/>
 
    <attribute   name="managedResource"
          description="The managed resource this MBean is associated with"
                 type="java.lang.Object"/>

    <attribute   name="maxActiveSessions"
          description="The maximum number of active Sessions allowed, or -1
                       for no limit"
                 type="int"/>

    <attribute   name="maxInactiveInterval"
          description="The default maximum inactive interval for Sessions
                       created by this Manager"
                 type="int"/>
                 
    <attribute name="processExpiresFrequency"
               description="The frequency of the manager checks (expiration and passivation)"
               type="int"/>
               
    <attribute   name="sessionIdLength"
          description="The session id length (in bytes) of Sessions
                       created by this Manager"
                 type="int"/>

    <attribute   name="name"
          description="The descriptive name of this Manager implementation
                       (for logging)"
                 type="java.lang.String"
            writeable="false"/>

    <attribute   name="pathname"
          description="Path name of the disk file in which active sessions"
                 type="java.lang.String"/>

    <attribute   name="activeSessions"
          description="Number of active sessions at this moment"
                 type="int" 
            writeable="false"/>

    <attribute   name="sessionCounter"
          description="Total number of sessions created by this manager"
                 type="int" />

    <attribute   name="maxActive"
          description="Maximum number of active sessions so far"
                 type="int" />

    <attribute   name="maxIdleBackup"
          description="How long a session must be idle before it should be backed up"
                 type="int" />

    <attribute   name="minIdleSwap"
          description="Minimum time a session must be idle before it is swapped to disk"
                 type="int" />

    <attribute   name="maxIdleSwap"
          description="The maximum time a session may be idle before it should be swapped to file just on general principle"
                 type="int" />

    <attribute   name="rejectedSessions"
          description="Number of sessions we rejected due to maxActive beeing reached"
                 type="int" />

    <attribute   name="expiredSessions"
          description="Number of sessions that expired ( doesn't include explicit invalidations )"
                 type="int" />

    <attribute   name="processingTime"
          description="Time spent doing housekeeping and expiration"
                 type="long" />

    <attribute   name="duplicates"
          description="Number of duplicated session ids generated"
                 type="int" />

    <operation   name="listSessionIds"
          description="Return the list of active session ids"
               impact="ACTION"
           returnType="java.lang.String">
    </operation>

    <operation   name="getSessionAttribute"
          description="Return a session attribute"
               impact="ACTION"
           returnType="java.lang.String">
      <parameter name="sessionId"
          description="Id of the session"
                 type="java.lang.String"/>
      <parameter name="key"
          description="key of the attribute"
                 type="java.lang.String"/>
    </operation>

    <operation   name="getSession"
          description="Get information about a session"
               impact="ACTION"
           returnType="java.util.HashMap">
      <parameter name="sessionId"
          description="Id of the session"
                 type="java.lang.String"/>
    </operation>

    <operation   name="expireSession"
          description="Expire a session"
               impact="ACTION"
           returnType="void">
      <parameter name="sessionId"
          description="Id of the session"
                 type="java.lang.String"/>
    </operation>

    <operation   name="getLastAccessedTime"
          description="Get the last access time"
               impact="ACTION"
           returnType="java.lang.String">
      <parameter name="sessionId"
          description="Id of the session"
                 type="java.lang.String"/>
    </operation>

  </mbean>

</mbeans-descriptors>
