-- *****************************************************************
-- MY-REDUNDANCY-MIB.mib:  My redundancy and pluggable MIB file
--
-- $Copyright$
-- 
-- *****************************************************************
--

MY-REDUNDANCY-MIB DEFINITIONS ::= BEGIN

IMPORTS
        MODULE-IDENTITY,
        OBJECT-TYPE,
        NOTIFICATION-TYPE,
        Integer32,
        Counter32
                FROM SNMPv2-SMI
        TruthValue,
        DisplayString,
        RowStatus
                FROM SNMPv2-TC
        MODULE-COMPLIANCE,
        OBJECT-GROUP,
        NOTIFICATION-GROUP
                FROM SNMPv2-CONF
        myMgmt
                FROM MY-SMI;

myRedundancyMIB MODULE-IDENTITY
        LAST-UPDATED "200309100000Z"
        ORGANIZATION "$Company$"
        CONTACT-INFO
                " 
                Tel: $Telephone$ 

                E-mail: $E-mail$"
        DESCRIPTION
                "This module defines my redundancy mibs."
        REVISION      "200309200000Z"
        DESCRIPTION
                "Initial version of this MIB module."
        ::= { myMgmt 34}

myRedundancyMIBObjects OBJECT IDENTIFIER ::= { myRedundancyMIB 1 }

myRedundancyForceSwitchover OBJECT-TYPE
        SYNTAX INTEGER 
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "öΪκεķ0ֵʹǰ帴λ
             ͬʱ౸״̬Ĺ忪ʼ.
             ѯöֵʱ,ǵõ0."
        ::= { myRedundancyMIBObjects 1 }

myMainCPU OBJECT-TYPE
   	SYNTAX  INTEGER {
                increasing(0), -- ۺСĹȽ״̬
                decreasing(1)  -- ۺŴĹȽ״̬
             }
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
          "ʱö´ʱĸȽ
           ״̬öֻǹߵʵʽ״̬Ĺ
           ˲һ£ȵĹ޷"
        ::= { myRedundancyMIBObjects 2 }


myPluggableMIBObjects OBJECT IDENTIFIER ::= { myRedundancyMIB 2 } 

myPluggableModuleInfoTable OBJECT-TYPE
        SYNTAX SEQUENCE OF MyPluggableModuleInfoEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "ģϢڱ."
        ::= { myPluggableMIBObjects  1 }
    
myPluggableModuleInfoEntry OBJECT-TYPE
        SYNTAX MyPluggableModuleInfoEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "ģϢ."
        INDEX { myPluggableModuleInfoDeviceIndex, myPluggableModuleInfoSlotIndex }
        ::= { myPluggableModuleInfoTable 1 }

MyPluggableModuleInfoEntry ::= 
        SEQUENCE {
             myPluggableModuleInfoDeviceIndex Integer32,
             myPluggableModuleInfoSlotIndex Integer32,
             myPluggableModuleStatus INTEGER,
             myPluggableModuleConfigType INTEGER,
             myPluggableModuleConfigSwVer DisplayString,
             myPluggableModuleOnlineSwVer DisplayString,
             myPluggableModuleConfigInfoDescr DisplayString,
             myPluggableModuleOnlineInfoDescr DisplayString,
             myPluggableModuleConfigPortsNum Integer32,
             myPluggableModuleOnlinePortsNum Integer32,
             myPluggableModuleAction  INTEGER
        }
    
myPluggableModuleInfoDeviceIndex OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "ģ豸."
        ::= { myPluggableModuleInfoEntry 1 }
    
myPluggableModuleInfoSlotIndex OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "ģڲ."
        ::= { myPluggableModuleInfoEntry 2 }

myPluggableModuleStatus  OBJECT-TYPE
        SYNTAX  INTEGER {
                none(0),          --ģ鲻,ҲûԤģ
                ok(1),            --ģ
                installed(2),     --Ԥøģ,ʵû
                conflict(3),      --Ԥģʵʲģͳͻ
                removed(4),       --ģ鱻Ȱγ
                uninstalled(5),   --ģñжأģûбγ
                verIncompatible(6), --汾
                cannot-myup(7),  --ģ޷
                resetting(8),       --ģڸλ
                master(9),          --崦ڹ״̬
                backup(10)          --崦౸״̬
                
             }
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "ģ״̬."
        ::= { myPluggableModuleInfoEntry 3 }



myPluggableModuleConfigType OBJECT-TYPE
        SYNTAX INTEGER{
                none(0),     --ûвģ
                m6800-24T-4SFP-4GT(1),
                m6800-32T-4SFP-GT(2), 
                m6800-32FMT(3), 
                m6800-12GB(4),
                m6800-24SFP(5), 
                m6800-12SFP-GT(6),
                m6800-1XENPAK(7),
                m6800-2XENPAK(8),
                m6800-MSC(9),
                m6800-CM(10),
                m6800-24GT-8SFP(11)
             }
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "öģ.øöʱ,ûκ
             (ֵΪnone),ϵͳģԶв
             ȱʡֵ;򷵻زɹ.
             öڶȡʱ,Ѿõͻnone"
	::= { myPluggableModuleInfoEntry 4 }

myPluggableModuleConfigSwVer OBJECT-TYPE
        SYNTAX DisplayString(SIZE (1..32))
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
          "ģİ汾."
        ::= { myPluggableModuleInfoEntry 5 }


myPluggableModuleOnlineSwVer OBJECT-TYPE
        SYNTAX DisplayString(SIZE (1..32))
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
          "ʵʲģİ汾."
        ::= { myPluggableModuleInfoEntry 6 }


myPluggableModuleConfigInfoDescr OBJECT-TYPE
        SYNTAX DisplayString(SIZE (1..32))
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "õģ.ͬģģͬ.û
             ģʱΪ."
        ::= { myPluggableModuleInfoEntry 7 }
    
myPluggableModuleOnlineInfoDescr  OBJECT-TYPE
        SYNTAX DisplayString(SIZE (1..32))
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "ʵʲģ.ͬģģͬ.
             ûģʱΪ."
        ::= { myPluggableModuleInfoEntry 8 }           

myPluggableModuleConfigPortsNum OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "ģĶ˿."
        ::= { myPluggableModuleInfoEntry 9 }

myPluggableModuleOnlinePortsNum OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "ʵʲģĶ˿."
        ::= { myPluggableModuleInfoEntry 10 }

myPluggableModuleAction  OBJECT-TYPE
        SYNTAX INTEGER{
                none(0),         --ڶȡ
                reset(1),        --ģ鸴λ
                clearAllConf(2), --ģûָȱʡ
                uninstall(3)     --ɾģ
              }
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "ö˶ģеĲֲ֧ģĸλ(1),
            ʹûָȱʡ(2)ɾģ(3)
            ȡöֵʱǷ0"
        ::= { myPluggableModuleInfoEntry 11 }           


myRedundancyMIBConformance OBJECT IDENTIFIER ::= { myRedundancyMIB 3 }
myRedundancyMIBCompliances OBJECT IDENTIFIER ::= { myRedundancyMIBConformance 1 }
myRedundancyMIBGroups      OBJECT IDENTIFIER ::= { myRedundancyMIBConformance 2 }


-- compliance statements

myRedundancyMIBCompliance MODULE-COMPLIANCE
        STATUS  current
        DESCRIPTION
                "The compliance statement for entities which implement
                the My System MIB"
        MODULE  -- this module
                MANDATORY-GROUPS { myRedundancyMIBGroup
                 }
        ::= { myRedundancyMIBCompliances 1 }
                
-- units of conformance

myRedundancyMIBGroup OBJECT-GROUP
        OBJECTS {
               myRedundancyForceSwitchover, 
               myMainCPU,
               myPluggableModuleInfoDeviceIndex,
               myPluggableModuleInfoSlotIndex,
               myPluggableModuleStatus,
               myPluggableModuleConfigType,
               myPluggableModuleConfigSwVer,
               myPluggableModuleOnlineSwVer,
               myPluggableModuleConfigInfoDescr,
               myPluggableModuleOnlineInfoDescr,
               myPluggableModuleConfigPortsNum,
               myPluggableModuleOnlinePortsNum,
               myPluggableModuleAction

        }
        STATUS  current
        DESCRIPTION
                "A collection of objects providing system information and
                opertion to a My agent."
        ::= { myRedundancyMIBGroups  1 } 
  
END

