// Copyright (c) 2005 DMTF.  All rights reserved.
// <change cr="ArchCR00066.004" type="add">Add UmlPackagePath
// qualifier values to CIM Schema.</change>
// ==================================================================
//  CIM_SecurityAssociationEndpoint 
// ==================================================================
   [Version ( "2.8.0" ), 
    UMLPackagePath ( "CIM::Network::IPsec" ), 
    Description ( 
       "SecurityAssociationEndpoint (SAEndpoint) represents the "
       "endpoint of a secure connection. This is typically an IP "
       "connection, although the model allows more flexibility than "
       "just IP. The SecurityAssociationEndpoint is tied to an "
       "IPProtocolEndpoint (or possibly other endpoint) using the "
       "LogicalIdentity association. Note that an endpoint is defined "
       "at both ends of the connection." )]
class CIM_SecurityAssociationEndpoint : CIM_ProtocolEndpoint {

      [Override ( "InstallDate" ), 
       Description ( 
          "InstallDate records when the SA (and its endpoint) was created."
           )]
   datetime InstallDate;

      [Description ( 
          "LifetimeSeconds specifies the maximum time that the SA "
          "will be considered valid after it has been created. A "
          "value of zero indicates that the default of 8 hours be "
          "used. A non-zero value indicates the seconds lifetime." ), 
       Units ( "Seconds" )]
   uint64 LifetimeSeconds = 0;

      [Write, Description ( 
          "RefreshThresholdSecondsPercentage is the lifetime "
          "percentage after which a new SA should be acquired, "
          "before the existing SA expires. A random period may be "
          "added to a calculated threshold to reduce network "
          "thrashing." ), 
       Units ( "Percent" ), 
       MinValue ( 0 ), 
       MaxValue ( 100 )]
   uint8 RefreshThresholdSecondsPercentage;

      [Description ( 
          "IdleDurationSeconds specifies how long the SA can be "
          "idle before it is deleted. The default value, 0, "
          "indicates that there is no idle timeout period." ), 
       Units ( "Seconds" )]
   uint64 IdleDurationSeconds = 0;

      [Description ( 
          "LifetimeKilobytes specifies the maximum number of "
          "kilobytes of data traffic to be protected by the SA. A "
          "value of zero (the default) indicates that there should "
          "be no maximum kilobyte lifetime. A non-zero value "
          "specifies the desired kilobyte lifetime. The SA is "
          "deleted when the LifetimeKilobyte value is exceeded." ), 
       Units ( "KiloBytes" )]
   uint64 LifetimeKilobytes = 0;

      [Write, Description ( 
          "RefreshThresholdKbytesPercentage is the lifetime "
          "percentage of kilobytes processed, at which a new SA "
          "should be acquired. A random value may be added to the "
          "calculated threshold to reduce network thrashing." ), 
       Units ( "Percent" ), 
       MinValue ( 0 ), 
       MaxValue ( 100 )]
   uint8 RefreshThresholdKbytesPercentage;

      [Write, Description ( 
          "PacketLoggingActive causes a log to be kept of traffic "
          "processed by the SAEndpoint." )]
   boolean PacketLoggingActive;


};
