    HP-ICF-RELOAD-MIB DEFINITIONS ::= BEGIN

    IMPORTS
        Integer32, OBJECT-TYPE, MODULE-IDENTITY
            FROM SNMPv2-SMI
        DateAndTime, TEXTUAL-CONVENTION
            FROM SNMPv2-TC
        MODULE-COMPLIANCE, OBJECT-GROUP
            FROM SNMPv2-CONF
        entPhysicalIndex
	    FROM ENTITY-MIB
        hpicfBasic
            FROM HP-ICF-BASIC;

    hpicfReloadMIB MODULE-IDENTITY
        LAST-UPDATED "200912030000Z"  -- December 3, 2009
        ORGANIZATION "HP Networking"
        CONTACT-INFO "Hewlett Packard Company
                     8000 Foothills Blvd.
                     Roseville, CA 95747"
        DESCRIPTION  "This MIB module describes objects for basic
                     management of reloading devices in the HP Integrated
                     Communication Facility product line."
        REVISION     "200912030000Z"  -- December 3, 2009
        DESCRIPTION  "Added object hpicfReloadTable " 
        REVISION     "200910010000Z"  -- October 1, 2009
        DESCRIPTION  "Added objects hpicfReloadState, hpicfReloadAfter,
                      hpicfReloadAt" 

        ::= { hpicfBasic 20 }

   -- hpicfReloadMIB - the main groups
   -- -------------------------------------------------------------

   hpicfReloadObjects             OBJECT IDENTIFIER
                         ::= { hpicfReloadMIB 1 }

   hpicfEntityReload              OBJECT IDENTIFIER
                         ::= { hpicfReloadMIB 2 }

   hpicfReloadConformance         OBJECT IDENTIFIER
                         ::= { hpicfReloadMIB 3 }

--  RELOAD MIB Textual Conventions
-- ********************************************************************

ReloadControl ::= TEXTUAL-CONVENTION
    STATUS        current
    DESCRIPTION   "An enumerated value which provides an indication of the
                   reload control."
    SYNTAX        INTEGER  {
       reloadSlotNone(1),
       fullPowerCycleReload(2)
    }

    -- The HP ICF Reload Group

   hpicfReloadState OBJECT-TYPE
        SYNTAX       INTEGER{
                      notScheduled(1),
                      reloadAfter(2),
                      reloadAt(3)
                      }
        MAX-ACCESS   read-write
        STATUS       current
        DESCRIPTION  "This object specifies the state of the device.
                      If it is in:
                            (1)  'no reload' was scheduled
                            (2)  'reload after' was scheduled
                            (3)  'reload at' was scheduled
                            To cancel the scheduled reload, this object
                            needs to be set with (1). 
                      NOTE: This object cannot be set with (2) or
                      (3).When hpicfReloadAfter or hpicfReloadAt 
                      is scheduled the state of hpicfReloadState is
                      automatically changed to (2) or (3) respectively."
         ::= { hpicfReloadObjects 1 }

   hpicfReloadAfter OBJECT-TYPE
        SYNTAX       Integer32
        MAX-ACCESS   read-write
        STATUS       current
        DESCRIPTION  "The object specifies the time in seconds after
                      which reload will occur.If no reload is scheduled
                      it returns -1. To schedule a reload/reboot, time 
                      in seconds is entered and 0 for immediate reload.
                      When hpicfReloadAfter is scheduled the state of
                      hpicfReloadState is changed to reloadAfter automatically.
                      NOTE: If hpicfReloadAt or hpicfReloadAfter is already 
                      scheduled, it will automatically be cancelled
                      and the new hpicfReloadAfter is scheduled."

          ::= { hpicfReloadObjects 2 }

   hpicfReloadAt    OBJECT-TYPE
        SYNTAX       DateAndTime
        MAX-ACCESS   read-write
        STATUS       current
        DESCRIPTION  "The object specifies the time and date at
                      which reload will occur. To schedule a reload
                      in the future, the time and date at which reload 
                      needs to occur should be given. When hpicfReloadAt
                      is scheduled it will change the state of 
                      hpicfReloadState to reloadAt.
                      NOTE: If hpicfReloadAt or hpicfReloadAfter is already 
                      scheduled, it will automatically be cancelled
                      and the new hpicfReloadAt is scheduled."

          ::= { hpicfReloadObjects 3 }

-- ********************************************************************

hpicfReloadTable   OBJECT-TYPE
    SYNTAX        SEQUENCE OF HpicfReloadEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION   "This table contains a row for different entities and
		  shows the control operation and the latest reload
		  time for that entity."
    ::= { hpicfEntityReload 2 }

hpicfReloadEntry   OBJECT-TYPE
    SYNTAX      	HpicfReloadEntry
    MAX-ACCESS  	not-accessible
    STATUS      	current
    DESCRIPTION 	"Information about Reload table."
    INDEX       {  entPhysicalIndex }
    ::= { hpicfReloadTable 1 }

HpicfReloadEntry ::= SEQUENCE {
      hpicfReloadControl        ReloadControl,
      hpicfReloadDateTime       DateAndTime
      }

hpicfReloadControl OBJECT-TYPE
    SYNTAX	ReloadControl
    MAX-ACCESS	read-write
    STATUS	current
    DESCRIPTION	"This specifies the control action for this entity"
    ::= { hpicfReloadEntry 1 }

hpicfReloadDateTime OBJECT-TYPE
    SYNTAX       DateAndTime
    MAX-ACCESS	 read-only
    STATUS	 current
    DESCRIPTION	 "The object specifies the time and date at
                  which the last reload will occured"
    ::= { hpicfReloadEntry 2 }

-- ********************************************************************

   -- -------------------------------------------------------------
   -- Conformance Information
   -- -------------------------------------------------------------

   hpicfReloadGroups OBJECT IDENTIFIER
                             ::= { hpicfReloadConformance 1 }

   hpicfReloadCompliances OBJECT IDENTIFIER
                             ::= { hpicfReloadConformance 2 }

   -- -------------------------------------------------------------
   -- units of conformance
   -- -------------------------------------------------------------

   hpicfReloadGroup OBJECT-GROUP
         OBJECTS    { hpicfReloadState,
                      hpicfReloadAfter,
                      hpicfReloadAt,
                      hpicfReloadControl,
                      hpicfReloadDateTime }
         STATUS     current
         DESCRIPTION "A collection of objects for reload command."
         ::= { hpicfReloadGroups 1}


-- --------------------------------------------------------------
   -- Compliance statements for hpicfReloadMIB Group 
-- --------------------------------------------------------------

   hpicfReloadFullCompliance1 MODULE-COMPLIANCE
       STATUS  current
       DESCRIPTION
           "The compliance statement for SNMP entities which
            implement the RELOAD-MIB with support for writable
            objects and notifications. Such an implementation can
            be both monitored and configured via SNMP. It can
            also send notifications about change in the
            operational status of the Reload application.
           "
       MODULE -- this module
       MANDATORY-GROUPS {
           hpicfReloadGroup
       }

       ::= { hpicfReloadCompliances 1 }

   hpicfReloadFullCompliance2 MODULE-COMPLIANCE
       STATUS  current
       DESCRIPTION
           "The compliance statement for SNMP entities which
            implement the RELOAD-MIB with support for writable
            objects. Such an implementation can
            be both monitored and configured via SNMP.
           "
       MODULE -- this module
       MANDATORY-GROUPS {
           hpicfReloadGroup
       }

       ::= { hpicfReloadCompliances 2 }

   hpicfReloadReadOnlyCompliance1 MODULE-COMPLIANCE
       STATUS  current
       DESCRIPTION
           "The compliance statement for SNMP entities which
            implement the hpicfReload MIB without support
            for read-write (i.e. in read-only mode). It can
            also send notifications about change in the
            operational status of the syslog application.
           "
       MODULE -- this module
       MANDATORY-GROUPS {
           hpicfReloadGroup
       }

       OBJECT  hpicfReloadAt
       MIN-ACCESS  read-only
       DESCRIPTION
           "Write access is not required.
           "
       OBJECT  hpicfReloadAfter
       MIN-ACCESS  read-only
       DESCRIPTION
           "Write access is not required.
           "
       OBJECT  hpicfReloadState
       MIN-ACCESS  read-only
       DESCRIPTION
           "Write access is not required.
           "
       OBJECT  hpicfReloadControl
       MIN-ACCESS  read-only
       DESCRIPTION
           "Write access is not required.
           "
       OBJECT  hpicfReloadDateTime
       MIN-ACCESS  read-only
       DESCRIPTION
           "Write access is not required.
           "
       
       ::= { hpicfReloadCompliances 3 }

END
