-- ***************************************************************
-- INFINERA-ENTITY-XM-MIB
--   
--  October 2011,  Sharfuddin Syed / Narendra Gupta
--   
--   
-- Copyright (c) 2011-2012 by Infinera Inc.
-- All rights reserved.
-- ****************************************************************
INFINERA-ENTITY-XM-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,InfnOxmEccStatus, InfnOxmCardRedundancyStatus                      
				       FROM INFINERA-TC-MIB;

xmMIB MODULE-IDENTITY
    LAST-UPDATED  "200810200000Z"
    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 XM equipment table."
::= { equipment 20 }

xmConformance       OBJECT IDENTIFIER ::= { xmMIB 3 }
xmCompliances       OBJECT IDENTIFIER ::= { xmConformance 1 }
xmGroups            OBJECT IDENTIFIER ::= { xmConformance 2 }

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

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

XmEntry ::= SEQUENCE {
        xmMoId             	    DisplayString,
        cardRedundancyStatus        InfnOxmCardRedundancyStatus,
        xmProvEqptType              InfnEqptType,
        xmRowStatus            	    RowStatus,
        actvTimingSource            DisplayString,
        xmEccStatus                 InfnOxmEccStatus
    
}

xmMoId  OBJECT-TYPE
    SYNTAX     DisplayString
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION 
        "This is the primary Key of the objects e.g "
    ::= { xmEntry 1 }

cardRedundancyStatus  OBJECT-TYPE
    SYNTAX     InfnOxmCardRedundancyStatus
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION 
        ""
    ::= { xmEntry 2 }

xmProvEqptType  OBJECT-TYPE 
	SYNTAX     InfnEqptType
    	MAX-ACCESS read-create
    	STATUS     current
   	 DESCRIPTION "The configured XM type." 
	::= { xmEntry 3 }

xmRowStatus  OBJECT-TYPE 
	SYNTAX     RowStatus
    	MAX-ACCESS read-create
    	STATUS     current
    	DESCRIPTION "The row status of this XM entry. Because rows in this table are indexed by entPhysicalIndex, to create a new row one must choose a valu			e 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 xmMoId and xmProvEqptType 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." 
	::= { xmEntry 4 }

actvTimingSource OBJECT-TYPE 
	SYNTAX     DisplayString
    	MAX-ACCESS read-only
    	STATUS     current
    	DESCRIPTION "" 
	::= { xmEntry 5 }

xmEccStatus OBJECT-TYPE 
	SYNTAX     InfnOxmEccStatus
    	MAX-ACCESS read-only
    	STATUS     current
    	DESCRIPTION "" 
	::= { xmEntry 6 }

xmCompliance  MODULE-COMPLIANCE
    STATUS     current
    DESCRIPTION 
        ""
    MODULE
        MANDATORY-GROUPS { xmGroup } 
    ::= { xmCompliances 1 }

xmGroup  OBJECT-GROUP
    OBJECTS { 
    	xmMoId, 
   	cardRedundancyStatus,
	xmProvEqptType,         
	xmRowStatus ,
	actvTimingSource,
        xmEccStatus
    }
    STATUS     current
    DESCRIPTION 
        ""
    ::= { xmGroups 1 }
END





