DECRU-WATCHDOG-MIB DEFINITIONS ::= BEGIN
    IMPORTS
        MODULE-IDENTITY, 
        OBJECT-TYPE, 
        Integer32             FROM SNMPv2-SMI
        OBJECT-GROUP, 
        MODULE-COMPLIANCE     FROM SNMPv2-CONF
	decruModules, 
        decruWatchdogGroups, 
        decruCompliances, 
        dcrWatchdog           FROM DECRU-BASE-MIB;
    
    decruWatchdogMibModule MODULE-IDENTITY
	LAST-UPDATED "200702281619Z"
	ORGANIZATION "Decru Inc."
        CONTACT-INFO "Mohit Kumar, mohitk@decru.com"
	DESCRIPTION 
            "The Watchdog mib module for Datafort"
        REVISION "200702281619Z"
	DESCRIPTION 
            "First revision, to transition to SMIv2"
	::= { decruModules 5 }

-- Status group 
    dcrWatchdogStatus OBJECT IDENTIFIER ::= { dcrWatchdog 1 }

    dcrWdLastLog OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION  
	    "Last watchdog log."
	::= { dcrWatchdogStatus 1 }

-- active alarm table
    dcrWdActiveAlarmNumber OBJECT-TYPE 
	SYNTAX Integer32
	MAX-ACCESS  read-only
	STATUS current
	DESCRIPTION  
	    "Number of active(failed) alarms."
	::= { dcrWatchdogStatus 2 }	

    DcrWdAAEntry ::=
      SEQUENCE {
        dcrWdActiveAlarm Integer32,
	dcrWdAAEvent Integer32,
	dcrWdAADesc OCTET STRING,
	dcrWdAALongDesc OCTET STRING,
	dcrWdAAShortDesc OCTET STRING
      }

    dcrWdActiveAlarmTable OBJECT-TYPE 
	SYNTAX SEQUENCE OF DcrWdAAEntry
	MAX-ACCESS  not-accessible
	STATUS current
	DESCRIPTION  
	    "Contains the list of active(failed) alarms.
	     Alarms are exposed through rmon.alarm.alarmTable."
	::= { dcrWatchdogStatus 3 }	

    dcrWdAAEntry OBJECT-TYPE
	SYNTAX DcrWdAAEntry
	MAX-ACCESS  not-accessible
	STATUS current
        DESCRIPTION
            "An entry containing information about the active alarm."
	INDEX { dcrWdActiveAlarm }
	::= { dcrWdActiveAlarmTable 1 }
    
    dcrWdActiveAlarm OBJECT-TYPE
	SYNTAX Integer32 (1..2147483647)
	MAX-ACCESS read-only
	STATUS current	
	DESCRIPTION  
	    "Active alarm index. This is equal to 
	     rmon.alarm.alarmTable.alarmEntry.alarmIndex value."
	::= { dcrWdAAEntry 1 }
    
    dcrWdAAEvent OBJECT-TYPE
	SYNTAX Integer32
	MAX-ACCESS read-only
	STATUS current	
	DESCRIPTION  
	    "Alarm event index. If this alarm is rising alarm, this
	     is equal to
	     rmon.alarm.alarmTable.alarmEntry.alarmRisingEventIndex value.
	     if this alarm is falling alarm, this is equal to 
	     rmon.alarm.alarmTable.alarmEntry.alarmFallingEventIndex value."
	::= { dcrWdAAEntry 2 }
    
    dcrWdAADesc OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current	
	DESCRIPTION  
	    "Description of the alarm. It is shown on LCD when
	     alarm is activated(failed)."
	::= { dcrWdAAEntry 3 }
    
    dcrWdAALongDesc OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current	
	DESCRIPTION  
	    "Long description of the alarm. It is shown on LCD 
	     ('Detail' screen) when alarm is activated(failed)."
	::= { dcrWdAAEntry 4 }
    
    dcrWdAAShortDesc OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current	
	DESCRIPTION  
	    "Short description of the alarm. It is shown on LCD 
	     when alarm is activated(failed)."
	::= { dcrWdAAEntry 5 }

-- event handler table
    DcrWdEHEntry ::= 
      SEQUENCE {
        dcrWdEHIndex Integer32,
	dcrWdEHAction OCTET STRING
      }

    dcrWdEHTable OBJECT-TYPE 
	SYNTAX SEQUENCE OF DcrWdEHEntry
	MAX-ACCESS  not-accessible
	STATUS current
        DESCRIPTION
            "Contains a list of event handler entries. 
             The table is currently not implemented."
	::= { dcrWatchdog 2 }	

    dcrWdEHEntry OBJECT-TYPE
	SYNTAX DcrWdEHEntry
	MAX-ACCESS not-accessible
	STATUS current
        DESCRIPTION
            "An entry describing the event handler."
	INDEX { dcrWdEHIndex }
	::= { dcrWdEHTable 1 }

    dcrWdEHIndex OBJECT-TYPE
	SYNTAX Integer32 (1..2147483647)
	MAX-ACCESS not-accessible
	STATUS current	
        DESCRIPTION
            "A unique index corresponding to the event. 
             It is currently not implemented."
	::= { dcrWdEHEntry 1 }
   
   dcrWdEHAction OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS not-accessible
	STATUS current	
        DESCRIPTION
            "The action to be taken when the event is triggered. 
             It is currently not implemented."
	::= { dcrWdEHEntry 2 }

-- MIB value cache
    DcrMibCacheEntry ::=
      SEQUENCE {
        dcrMibCacheOid OBJECT IDENTIFIER,
	dcrMibCacheValue Integer32
      }

    dcrMibCache OBJECT-TYPE 
	SYNTAX SEQUENCE OF DcrMibCacheEntry
	MAX-ACCESS not-accessible
	STATUS current
        DESCRIPTION
            "A list of cached mib entries."
	::= { dcrWatchdog 3 }	

    dcrMibCacheEntry OBJECT-TYPE
	SYNTAX DcrMibCacheEntry
	MAX-ACCESS not-accessible
	STATUS current
        DESCRIPTION
            "An entry describing the cached mib."
	INDEX { dcrMibCacheOid }
	::= { dcrMibCache 1 }

    dcrMibCacheOid OBJECT-TYPE
	SYNTAX OBJECT IDENTIFIER
	MAX-ACCESS not-accessible
	STATUS current	
        DESCRIPTION
            "The oid of the cached mib."
	::= { dcrMibCacheEntry 1 }
    
    dcrMibCacheValue OBJECT-TYPE
	SYNTAX Integer32
	MAX-ACCESS not-accessible
	STATUS current	
        DESCRIPTION
            "The value of the cached mib."
	::= { dcrMibCacheEntry 2 }

-- Compliance Statements
decruWatchdogCompliance MODULE-COMPLIANCE
    STATUS current
    DESCRIPTION
        "The requirements for conformance to the watchdog mib."
    MODULE -- this module

       MANDATORY-GROUPS { 
            decruWatchdogStatusGroup 
       }
   ::= { decruCompliances 4 }   


-- Object Groups
    decruWatchdogStatusGroup OBJECT-GROUP
        OBJECTS {
            dcrWdLastLog, dcrWdActiveAlarmNumber, dcrWdActiveAlarm, 
            dcrWdAAEvent, dcrWdAADesc, dcrWdAALongDesc, dcrWdAAShortDesc   
        }
        STATUS current
        DESCRIPTION
            "The System's Information Group."
        ::= { decruWatchdogGroups 1 }
    
END

