CISCOSB-ComponentMapper-MIB DEFINITIONS ::= BEGIN

-- Version:              1.0
-- Date:                 8-Jan-2019

IMPORTS
    OBJECT-TYPE, MODULE-IDENTITY,
    NOTIFICATION-TYPE                                       FROM SNMPv2-SMI
    DisplayString                                           FROM SNMPv2-TC
    switch001   FROM CISCOSB-MIB;

rlComponentMapper  MODULE-IDENTITY
                       LAST-UPDATED "201903210000Z"
                ORGANIZATION "Cisco Systems, Inc."
                CONTACT-INFO
                "Postal: 170 West Tasman Drive
                San Jose , CA 95134-1706
                USA

                
                Website:  Cisco Small Business Support Community <http://www.cisco.com/go/smallbizsupport>"
                       DESCRIPTION
                            "The private MIB module definition for Hardware & software components."
                       REVISION "201904030000Z"
                       DESCRIPTION
                            "Initial version of this MIB."
                       ::= { switch001 243 }

ComponentType ::= TEXTUAL-CONVENTION
    STATUS current
    DESCRIPTION    "Component type."
    SYNTAX INTEGER {
        cpu(1),
        packetProcessor(2),
        phy(3),
        flash(4),
        sfp(5),
        poe(6),
        cpld(7),
        image(8),
        kernel(9),
        bootloader(10),
        fanController(11),
        ssh(12),
        ssl(13),
        mcu(14)
}

rlComponentMapperTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF RlComponentMapperEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "For each module (board) there is an entry describing its hardware & software info in this
         module"
    ::= { rlComponentMapper 1 }

rlComponentMapperEntry OBJECT-TYPE
    SYNTAX      RlComponentMapperEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A entry of this table specifies a module (board)"
    INDEX  { rlComponentMapperUnitNum, rlComponentMapperType, rlComponentMapperIndex}
    ::= { rlComponentMapperTable 1 }

RlComponentMapperEntry ::= SEQUENCE {
    rlComponentMapperUnitNum            INTEGER,
    rlComponentMapperType               ComponentType,
    rlComponentMapperIndex              INTEGER,
    rlComponentMapperVendorID           DisplayString,
    rlComponentMapperDeviceID           DisplayString,
    rlComponentMapperHardwareVersionID  DisplayString,
    rlComponentMapperSoftwareVersionID  DisplayString,
    rlComponentMapperAliasID            DisplayString,
    rlComponentMapperProductNumber      DisplayString,
    rlComponentMapperSerialNumber       DisplayString,
    rlComponentMapperPartNumber         DisplayString
}

rlComponentMapperUnitNum OBJECT-TYPE
    SYNTAX          INTEGER
    MAX-ACCESS      not-accessible
    STATUS          current
    DESCRIPTION
        "The unit number (for stackable devices) or 1 for 'stand alone' device."
    ::= {rlComponentMapperEntry 1 }

rlComponentMapperType OBJECT-TYPE
    SYNTAX          ComponentType
    MAX-ACCESS      not-accessible
    STATUS          current
    DESCRIPTION
        "Hardware or Software Type:
            cpu(1),
            packetProcessor(2),
            phy(3),
            flash(4),
            sfp(5),
            poe(6),
            cpld(7),
            image(8),
            kernel(9),
            bootloader(10),
            fanController(11),
            ssh(12),
            ssl(13),
            mcu(14)
        "
    ::= {rlComponentMapperEntry 2 }

rlComponentMapperIndex OBJECT-TYPE
    SYNTAX          INTEGER
    MAX-ACCESS      not-accessible
    STATUS          current
    DESCRIPTION
        "The index of the component."
    ::= {rlComponentMapperEntry 3}

rlComponentMapperVendorID OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS      read-only
    STATUS      current
    DESCRIPTION
        "The vendor of the wanted component."
    ::= {rlComponentMapperEntry 4 }

rlComponentMapperDeviceID OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS      read-only
    STATUS      current
    DESCRIPTION
        "The Device ID of the wanted component."
    ::= {rlComponentMapperEntry 5 }

rlComponentMapperHardwareVersionID OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS      read-only
    STATUS      current
    DESCRIPTION
        "The hardware version/revision of the wanted component."
    ::= {rlComponentMapperEntry 6 }

rlComponentMapperSoftwareVersionID OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS      read-only
    STATUS      current
    DESCRIPTION
        "The software version/revision of the wanted component."
    ::= {rlComponentMapperEntry 7 }

rlComponentMapperAliasID OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS      read-only
    STATUS      current
    DESCRIPTION
        "Alias for identical component type with different name."
    ::= {rlComponentMapperEntry 8 }

rlComponentMapperProductNumber OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS      read-only
    STATUS      current
    DESCRIPTION
        "component product number"
    ::= {rlComponentMapperEntry 9 }

rlComponentMapperSerialNumber OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS      read-only
    STATUS      current
    DESCRIPTION
        "component serial number."
    ::= {rlComponentMapperEntry 10 }

rlComponentMapperPartNumber OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS      read-only
    STATUS      current
    DESCRIPTION
        "component part number."
    ::= {rlComponentMapperEntry 11 }

END

