COVALENT-WWW-RESP-NOTIFY-MIB DEFINITIONS ::= BEGIN

IMPORTS
    MODULE-COMPLIANCE, NOTIFICATION-GROUP, OBJECT-GROUP
        FROM SNMPv2-CONF
    MODULE-IDENTITY, NOTIFICATION-TYPE, OBJECT-TYPE, 
    Unsigned32, enterprises
        FROM SNMPv2-SMI
    DateAndTime
        FROM SNMPv2-TC
    SnmpAdminString
        FROM SNMP-FRAMEWORK-MIB
    WwwDocName, WwwRequestType, WwwResponseType, wwwServiceIndex
        FROM WWW-MIB;

covalentWwwResponseNotifyMIB MODULE-IDENTITY
    LAST-UPDATED "200204020000Z"
    ORGANIZATION 
	"Copyright (C) Covalent Technologies (2000-2002).  All Rights Reserved."
    CONTACT-INFO 
        "SNMP Engineering
         Covalent Technologies
         postal: 303 Second Street
                 Suite 375 South
                 San Francisco, CA 94107
         tel:    +1-800-444-1935
         email: support@covalent.net"
    DESCRIPTION 
        "This module defines managed objects enabling a notification/trap
         for WWW services. Based on the responseType that was returned
         to a client during a document access attempt a notification
         is generated.

         NOTE: The WWW-MIB defines general administrative information
         as well protocol statistics and document statistics. This module
         extends the protocol and document statistics with notifications
         based on response type.

         $id$"
    ::= { covalent 3 }

covalent OBJECT IDENTIFIER
    ::= { enterprises 6100 }

ctNotifyMIBObjects OBJECT IDENTIFIER
    ::= { covalentWwwResponseNotifyMIB 1 }

ctNotifyEnableTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF CtNotifyEnableEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "The table providing configuration capability for enabling the
         notifications to be sent when a perticular response type
         is returned to the WWW-client."
    ::= { ctNotifyMIBObjects 1 }

ctNotifyEnableEntry OBJECT-TYPE
    SYNTAX      CtNotifyEnableEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "Response statistics for an individual service."
    INDEX       { wwwServiceIndex, ctNotifyEnableIndex }
    ::= { ctNotifyEnableTable 1 }

CtNotifyEnableEntry ::= SEQUENCE {
    ctNotifyEnableIndex     WwwResponseType,
    ctNotifyEnableValue     INTEGER
}

ctNotifyEnableIndex OBJECT-TYPE
    SYNTAX      WwwResponseType
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "The particular response type the notification apply to."
    ::= { ctNotifyEnableEntry 1 }

ctNotifyEnableValue OBJECT-TYPE
    SYNTAX      INTEGER { enabled(1), disabled(2) }
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION 
        "The value that determines wheter a notification 
         will be sent.

         'enabled' means a notification is sent for
                the associated 'WwwResponseType'.
         'disabled' means a notification is not sent for
                the associated 'WwwResponseType'."
    ::= { ctNotifyEnableEntry 2 }

ctNotifyNotificationObjects OBJECT IDENTIFIER
    ::= { covalentWwwResponseNotifyMIB 2 }

ctNotifyService OBJECT-TYPE
    SYNTAX      Unsigned32 (1..4294967295)
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION 
        "The uniquely identifiying index of the WWW service with which
         this Notification is associated. This is an index of the
         'wwwServiceTable' of the WWW-MIB.
         This value can be use for collecting management information
         of the WWW service."
    ::= { ctNotifyNotificationObjects 1 }

ctNotifyDocName OBJECT-TYPE
    SYNTAX      WwwDocName
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION 
        "The name of the document for which access was attempted."
    ::= { ctNotifyNotificationObjects 2 }

ctNotifyDocTimeStamp OBJECT-TYPE
    SYNTAX      DateAndTime
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION 
        "The date and time of the attempt to access this
         document."
    ::= { ctNotifyNotificationObjects 3 }

ctNotifyDocRequestType OBJECT-TYPE
    SYNTAX      WwwRequestType
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION 
        "The protocol request type which was received by the
         server when this document access was attempted."
    ::= { ctNotifyNotificationObjects 4 }

ctNotifyDocResponseType OBJECT-TYPE
    SYNTAX      WwwResponseType
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION 
        "The protocol response type which was sent to the client
         as a result of this attempt to access a document. This
         object contains the type of the primary response if
         there were multiple responses to a single request."
    ::= { ctNotifyNotificationObjects 5 }

ctNotifyDocStatusMsg OBJECT-TYPE
    SYNTAX      SnmpAdminString
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION 
        "This object contains a human readable description of the
         reason why the ctNotifyDocResponseType was returned to the
         client. This object defines the implementation-specific
         reason if the value of ctNotifyDocResponseType indicates
         an error. For example, this object can indicate that the
         requested document could not be transferred due to a
         timeout condition or the document could not be transferred
         because a 'soft link' pointing to the document could not be
         resolved."
    ::= { ctNotifyNotificationObjects 6 }

ctNotifyDocBytes OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION 
        "The number of content bytes that was returned as a
         result of this attempt to access a document."
    ::= { ctNotifyNotificationObjects 7 }

ctNotifyMIBTraps OBJECT IDENTIFIER
    ::= { covalentWwwResponseNotifyMIB 3 }

ctNotifyResponse NOTIFICATION-TYPE
    OBJECTS     { ctNotifyService,
                  ctNotifyDocName,
                  ctNotifyDocTimeStamp, 
                  ctNotifyDocRequestType,
                  ctNotifyDocResponseType, 
                  ctNotifyDocStatusMsg,
                  ctNotifyDocBytes }
    STATUS      current
    DESCRIPTION 
        "The trap that is sent for each processed request if the
         response type is enabled in the 'ctNotifyResponseTable'."
    ::= { ctNotifyMIBTraps 1 }

ctNotifyMIBConformance OBJECT IDENTIFIER
    ::= { covalentWwwResponseNotifyMIB 4 }

ctNotifyMIBCompliances OBJECT IDENTIFIER
    ::= { ctNotifyMIBConformance 1 }

ctNotifyMIBGroups OBJECT IDENTIFIER
    ::= { ctNotifyMIBConformance 2 }

ctNotifyResponseObjectGroup OBJECT-GROUP
    OBJECTS     { ctNotifyService,
                  ctNotifyDocName, ctNotifyDocTimeStamp, 
                  ctNotifyDocRequestType,
                  ctNotifyDocResponseType, 
                  ctNotifyDocStatusMsg,
                  ctNotifyDocBytes }
    STATUS      current
    DESCRIPTION 
        "The objects that are maintained in order to have the request
         information accessible for notify.
         NOTE: These objects are related to the wwwDocLastNTable."
    ::= { ctNotifyMIBGroups 1 }

ctNotifyResponseGroup NOTIFICATION-GROUP
    NOTIFICATIONS { ctNotifyResponse }
    STATUS      current
    DESCRIPTION 
        "The trap response group defines all notification sent
         based on matching a resposne type of the request."
    ::= { ctNotifyMIBGroups 2 }

ctNotifyEnableGroup OBJECT-GROUP
    OBJECTS     { ctNotifyEnableValue }
    STATUS      current
    DESCRIPTION
        "The enable response group defines the objects
         used for enabling/disabling the notification
         generation."
    ::= { ctNotifyMIBGroups 3 }

ctNotifyBasicCompliance MODULE-COMPLIANCE
    STATUS      current
    DESCRIPTION 
        "The basic compliance statement for the COVALENT-RESP-NOTIFY-MIB."
    MODULE      -- this module
        MANDATORY-GROUPS        { ctNotifyEnableGroup }
    ::= { ctNotifyMIBCompliances 1 }

ctNotifyMinimalCompliance MODULE-COMPLIANCE
    STATUS      current
    DESCRIPTION 
        "The basic compliance statement for the COVALENT-RESP-NOTIFY-MIB."
    MODULE      -- this module
        MANDATORY-GROUPS        { ctNotifyResponseObjectGroup,
                  ctNotifyResponseGroup }
    ::= { ctNotifyMIBCompliances 2 }

ctNotifyFullCompliance MODULE-COMPLIANCE
    STATUS      current
    DESCRIPTION 
        "The basic compliance statement for the COVALENT-RESP-NOTIFY-MIB."
    MODULE      -- this module
        MANDATORY-GROUPS        { ctNotifyEnableGroup,
                  ctNotifyResponseObjectGroup, 
                  ctNotifyResponseGroup }
    ::= { ctNotifyMIBCompliances 3 }

ctNotifyReadOnlyCompliance MODULE-COMPLIANCE
    STATUS      current
    DESCRIPTION
        "The compliance statement for a read-only implementation
         of the COVALENT-RESP-NOTIFY-MIB."
    MODULE      -- this module
        MANDATORY-GROUPS {
                    ctNotifyEnableGroup,
                    ctNotifyResponseObjectGroup,
                    ctNotifyResponseGroup
        }
        OBJECT      ctNotifyEnableValue
        MIN-ACCESS  read-only
        DESCRIPTION
            "Write access is not needed.
             The implementation determines whether the Notification
             is sent and it is not configurable via SNMP."
    ::= { ctNotifyMIBCompliances 4 }


END -- end of module COVALENT-RESP-NOTIFY-MIB.
