// Copyright (c) 2005 DMTF.  All rights reserved.
   [Version ( "2.8.0" ), 
    UMLPackagePath ( "CIM::Application::J2eeAppServerStats" ), 
    Description ( 
       "The CIM_J2eeJMSSessionStats class defines the performance "
       "statistics that are provided by a JMS session." )]
class CIM_J2eeJMSSessionStats : CIM_J2eeStatistic {

      [Description ( "The number of durable subscriptions." ), 
       Counter, MappingStrings { 
          "JSR77.JCP|JSR77.6.26.1.3 getDurableSubscriptionCount|V1.0" }]
   uint64 DurableSubscriptionCount;

      [Description ( "The number of expired messages." ), 
       Counter, MappingStrings { 
          "JSR77.JCP|JSR77.6.26.1.4 getExpiredMessageCount|V1.0" }]
   uint64 ExpiredMessageCount;

      [Description ( "The number of messages exchanged." ), 
       Counter, MappingStrings { 
          "JSR77.JCP|JSR77.6.26.1.5 getMessageCount|V1.0" }]
   uint64 MessageCount;

      [Description ( 
          "The time spent by a message before being delivered. The "
          "time is represented as a datetime interval." ), 
       MappingStrings { 
          "JSR77.JCP|JSR77.6.26.1.6 getMessageWaitTime|V1.0" }]
   datetime MessageWaitTime;

      [Description ( 
          "The maximum amount of time spent by a message before "
          "being delivered since the beginning of this measurement. "
          "The time is represented as a datetime interval." ), 
       MappingStrings { "JSR77.JCP|JSR77.6.6.1.2 getMaxTime|V1.0" }]
   datetime MessageWaitTimeMaxTime;

      [Description ( 
          "The minimum amount of time spent by a message before "
          "being delivered since the beginning of this measurement. "
          "The time is represented as a datetime interval." ), 
       MappingStrings { "JSR77.JCP|JSR77.6.6.1.3 getMinTime|V1.0" }]
   datetime MessageWaitTimeMinTime;

      [Description ( 
          "The total amount of time spent by a message before being "
          "delivered since the beginning of this measurement. "
          "Dividing MessageWaitTimeTotalTime by MessageWaitTime "
          "will provide the average time spent using a connection. "
          "The time is represented as a datetime interval." ), 
       MappingStrings { "JSR77.JCP|JSR77.6.6.1.4 getTotalTime|V1.0" }]
   datetime MessageWaitTimeTotalTime;

      [Description ( "The number of pending messages." ), 
       Counter, MappingStrings { 
          "JSR77.JCP|JSR77.6.26.1.7 getPendingMessageCount|V1.0" }]
   uint64 PendingMessageCount;


};
