-- ***************************************************************
-- INFINERA-ENTITY-SCM-MIB
--   
-- May 2010, Sharfuddin Syed / Pradyumna
--   
--   
-- Copyright (c) 2010-2012 by Infinera Inc.
-- All rights reserved.
-- ****************************************************************

INFINERA-ENTITY-SCM-MIB DEFINITIONS ::= BEGIN

IMPORTS
    OBJECT-TYPE, MODULE-IDENTITY        FROM SNMPv2-SMI
    OBJECT-GROUP, MODULE-COMPLIANCE     FROM SNMPv2-CONF
    RowStatus, DisplayString            FROM SNMPv2-TC
    entLPPhysicalIndex                  FROM ENTITY-MIB
    equipment                           FROM INFINERA-REG-MIB
    InfnEqptType, FloatTenths    FROM INFINERA-TC-MIB;

scmMIB MODULE-IDENTITY
    LAST-UPDATED  "201005240000Z"
    ORGANIZATION 
        "INFINERA"
    CONTACT-INFO 
        "Infinera
        169 Java Drive
        Sunnyvale, CA - 94089
        
        Contact : Technical Support
        Email   : support@infinera.com
        Phone   : 1-877-INF-5288"
    DESCRIPTION 
        "This MIB is modeling for SCM equipment table."
        
::= { equipment 18 }

scmConformance       OBJECT IDENTIFIER ::= { scmMIB 3 }
scmCompliances       OBJECT IDENTIFIER ::= { scmConformance 1 }
scmGroups            OBJECT IDENTIFIER ::= { scmConformance 2 }

scmTable  OBJECT-TYPE
    SYNTAX SEQUENCE OF ScmEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION 
        "This table contains all SCM modules that are currently present in a network element.
        "
    ::= { scmMIB 1 }

scmEntry  OBJECT-TYPE
    SYNTAX     ScmEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION 
        "A row in the SCM table. Each row in the table is identified with a unique entPhysicalIndexID. 
        "
    INDEX { entLPPhysicalIndex }
    ::= { scmTable 1 }

ScmEntry ::= SEQUENCE {
    scmMoId             DisplayString,
    scmProvEqptType     InfnEqptType,
    scmRowStatus        RowStatus,
    scmIdlerVoaAttenuation  FloatTenths,
    scmProvisionedRemoteSCM DisplayString,
    scmAssociatedDegree     DisplayString
}

scmMoId  OBJECT-TYPE
    SYNTAX     DisplayString
    MAX-ACCESS read-create
    STATUS     current
    DESCRIPTION 
        "This is the primary Key of the objects e.g 1-A-1"
    ::= { scmEntry 1 }

scmProvEqptType  OBJECT-TYPE
    SYNTAX     InfnEqptType
    MAX-ACCESS read-create
    STATUS     current
    DESCRIPTION 
        "User provisioned SCM type."
    ::= { scmEntry 2 }
    

scmIdlerVoaAttenuation OBJECT-TYPE
    SYNTAX      FloatTenths
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION ""
    ::= { scmEntry 3 }

scmProvisionedRemoteSCM OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION ""
    ::= { scmEntry 4 }

scmAssociatedDegree     OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION ""
    ::= { scmEntry 5 }

scmRowStatus  OBJECT-TYPE
    SYNTAX     RowStatus
    MAX-ACCESS read-create
    STATUS     current
    DESCRIPTION 
        "The row status of this SCM entry.
                Because rows in this table are indexed by entPhysicalIndex, to create a new row one must
                choose a value of entPhysicalIndex that is not already in use.
        
                A side-effect of the creation of a row in this table is the creation of a corresponding
                row in the eqptTable and the entPhysicalTable.
        
                The status may not be set to active if the scmMoId and scmProvEqptType are not set to valid values.
        
                This row may only be deleted if it was a pre-provisioned row and the hardware is not present.
        
                If this row is deleted, the associated row in the Eqpt Table and entPhysicalTable will be
                deleted by the agent."
    ::= { scmEntry 6 }

scmCompliance  MODULE-COMPLIANCE
    STATUS     current
    DESCRIPTION 
        ""
    MODULE
        MANDATORY-GROUPS { scmGroup } 
    ::= { scmCompliances 1 }

scmGroup  OBJECT-GROUP
    OBJECTS { scmMoId, 
        scmProvEqptType, 
        scmRowStatus ,
        scmIdlerVoaAttenuation,
        scmProvisionedRemoteSCM,
        scmAssociatedDegree
    }
    STATUS     current
    DESCRIPTION 
        ""
    ::= { scmGroups 1 }
END




