LUM-TRAIL-MIB DEFINITIONS ::= BEGIN

IMPORTS
    MODULE-IDENTITY, OBJECT-TYPE, Unsigned32
        FROM SNMPv2-SMI
    OBJECT-GROUP, MODULE-COMPLIANCE
        FROM SNMPv2-CONF
    DateAndTime
        FROM SNMPv2-TC
    lumModules, lumTrailMIB
        FROM LUM-REG
    FaultStatus
        FROM LUM-TC;

lumTrailMIBModule MODULE-IDENTITY
    LAST-UPDATED
        "201706150000Z" -- June 15th 2017
    ORGANIZATION
        "Infinera Corporation"
    CONTACT-INFO
        "techsupport@infinera.com"
    DESCRIPTION
        "The trail MIB.

        - General

        - Trail status

"

    REVISION
        "201706150000Z" -- June 15th 2017
    DESCRIPTION
        "Changes made for release r29.0:
         - Changed ORGANIZATION and CONTACT-INFO"
    REVISION
        "201104130000Z" -- April 13th 2011
    DESCRIPTION
        "The initial revision of this module."
    ::= { lumModules 38 }


-- ----------------------------------------------------
-- Conformance area, containing groups and complicance
-- specifications.
-- ----------------------------------------------------

lumTrailConfs OBJECT IDENTIFIER ::= { lumTrailMIB 1 }
lumTrailGroups OBJECT IDENTIFIER ::= { lumTrailConfs 1 }
lumTrailCompl OBJECT IDENTIFIER ::= { lumTrailConfs 2 }


-- ----------------------------------------------------
-- Root for objects in the TRAIL MIB
-- ----------------------------------------------------

lumTrailMIBObjects OBJECT IDENTIFIER ::= { lumTrailMIB 2 }

-- ----------------------------------------------------
-- This MIB contains the following groups:
-- ----------------------------------------------------

trailGeneral OBJECT IDENTIFIER ::= { lumTrailMIBObjects 1 }
trailStatusList OBJECT IDENTIFIER ::= { lumTrailMIBObjects 2 }

-- ----------------------------------------------------
-- Textual Conventions
-- ----------------------------------------------------

-- n/a

-------------------------------------------------------
-- General group
-- ----------------------------------------------------

trailGeneralConfigLastChangeTime OBJECT-TYPE
    SYNTAX      DateAndTime
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The time when the configuration of the MIB was
        last changed.

"
    ::= { trailGeneral 1 }

trailGeneralStateLastChangeTime OBJECT-TYPE
    SYNTAX      DateAndTime
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The time when the state of the MIB was last
        changed.

"
    ::= { trailGeneral 2 }

trailGeneralStatusTableSize OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Size of table.

"
    ::= { trailGeneral 3 }

-------------------------------------------------------
-- Trail status table
-- ----------------------------------------------------

trailStatusTable  OBJECT-TYPE
    SYNTAX      SEQUENCE OF TrailStatusEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The status list."
    ::= { trailStatusList 1 }

trailStatusEntry OBJECT-TYPE
    SYNTAX      TrailStatusEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "An entry in the status list.

"
    INDEX { trailStatusIndex }
    ::= { trailStatusTable 1 }

TrailStatusEntry ::=
    SEQUENCE {
        trailStatusIndex                   Unsigned32,
        trailStatusIncomplete              FaultStatus,
        trailStatusDegraded                FaultStatus,
	trailStatusDown            	   FaultStatus }

trailStatusIndex OBJECT-TYPE
    SYNTAX      Unsigned32 (1..2147483647)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "An arbitrary index assigned to each entry.

"
   ::= { trailStatusEntry 1 }

trailStatusIncomplete  OBJECT-TYPE
    SYNTAX      FaultStatus
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "tbd

"
   ::= { trailStatusEntry 2 }

trailStatusDegraded  OBJECT-TYPE
    SYNTAX      FaultStatus
    MAX-ACCESS  read-only
    STATUS      deprecated
    DESCRIPTION
        "tbd

"
   ::= { trailStatusEntry 3 }

trailStatusDown  OBJECT-TYPE
    SYNTAX      FaultStatus
    MAX-ACCESS  read-only
    STATUS      deprecated
    DESCRIPTION
        "tbd.

"
   ::= { trailStatusEntry 4 }



-- ----------------------------------------------------
-- Object and event groups
-- ----------------------------------------------------

trailGeneralGroup OBJECT-GROUP
    OBJECTS {
        trailGeneralConfigLastChangeTime,
        trailGeneralStateLastChangeTime,
        trailGeneralStatusTableSize }
    STATUS      current
    DESCRIPTION
        "The general objects."
    ::= { lumTrailGroups 1 }

trailStatusGroup OBJECT-GROUP
    OBJECTS {
        trailStatusIndex,
        trailStatusDegraded,
        trailStatusDown,
		trailStatusIncomplete }
    STATUS      deprecated
    DESCRIPTION
        "The general objects."
    ::= { lumTrailGroups 2 }

trailStatusGroupV2 OBJECT-GROUP
    OBJECTS {
        trailStatusIndex,
        trailStatusIncomplete }
    STATUS      current
    DESCRIPTION
        "The general objects."
    ::= { lumTrailGroups 3 }

-- ----------------------------------------------------
-- Compliance
-- ----------------------------------------------------

lumTrailBasicComplV1 MODULE-COMPLIANCE
    STATUS      deprecated
    DESCRIPTION
        "Basic implementation requirements for the TRAIL MIB V1."
    MODULE
        MANDATORY-GROUPS {
            trailGeneralGroup,
            trailStatusGroup }
    ::= { lumTrailCompl 1 }

lumTrailBasicComplV2 MODULE-COMPLIANCE
    STATUS      current
    DESCRIPTION
        "Basic implementation requirements for the TRAIL MIB (29.0)"
    MODULE
        MANDATORY-GROUPS {
            trailGeneralGroup,
            trailStatusGroupV2 }
    ::= { lumTrailCompl 2 }

END

