org.ocap.diagnostics
Class MIBManager

java.lang.Object
  extended by org.ocap.diagnostics.MIBManager

public abstract class MIBManager
extends Object

The MIBManager class provides Management Information Base (MIB) access to the host's MIB. Applications may use the MIBManager to make MIB queries. In addition, applications can set a MIB Object that can be retrieved from the Host device using SNMP.


Method Summary
static MIBManager getInstance()
          Gets the MIBManager.
abstract  MIBDefinition[] queryMibs(String oid)
          Makes a query for all MIB objects matching the oid parameter, as well as any descendants in the MIB tree.
abstract  void registerOID(String oid, int access, boolean leaf, int dataType, MIBListener listener)
          Registers a MIB object by adding the OID and listener to the MIB tables.
abstract  void unregisterOID(String oid)
          Unregisters a previously registered OID if the OID was registered by the same application.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

getInstance

public static MIBManager getInstance()
Gets the MIBManager.

Returns:
The MIBManager.
Throws:
SecurityException - if the calling application does not have MonitorAppPermission("diagnostics").

registerOID

public abstract void registerOID(String oid,
                                 int access,
                                 boolean leaf,
                                 int dataType,
                                 MIBListener listener)
Registers a MIB object by adding the OID and listener to the MIB tables. OID must be unique and not pre-existing. OID must include a trailing ".0" for leaf items or but not include the instance ID for table column items. (The same listener may be installed to will be invoked for all row instances for table column items. any number of OIDs, if desired.) Table OIDs may be the OID of the start of the table or a column within the table, depending upon whether the implementation desires handling all table values with a single listener, or have different listeners for each column.

Parameters:
oid - The Object Identifier of the MIB being registered. The format of the string is based on the format defined by RFC 2578 for OBJECT IDENTIFIER definition. Terms in the string are period delimited, e.g. "1.3.6.1.4.1".
leaf - When true indicates if the object is a leaf, otherwise the object is a non-leaf table column.
access - Indicates allowed access to the MIB being registered. See access constants in the class for valid values.
dataType - The data type of the MIB being registered. See constants in MIBDefinition for valid values.
listener - Listener to the MIB being registered. Must not be null.
Throws:
IllegalArgumentException - if oid is an invalid oid string, if oid is already installed, or any other parameter has an invalid value.

unregisterOID

public abstract void unregisterOID(String oid)
Unregisters a previously registered OID if the OID was registered by the same application.

Parameters:
oid - An object identifier that was passed to the registerOID method.
Throws:
IllegalArgumentException - if parameter does not match an OID registered with the registerOID method.

queryMibs

public abstract MIBDefinition[] queryMibs(String oid)
Makes a query for all MIB objects matching the oid parameter, as well as any descendants in the MIB tree. If the object to be searched for is a leaf the trailing ".0" must be included for an exact match. A query for a leaf object SHALL return just that object if found. A query for a non-leaf OID SHALL return all MIB objects below that OID. Existing leaf and table items SHALL be included in the results; branch-nodes without data SHALL NOT. For example; If a query is for OID 1.2.3.4 then all table items and leafs below that OID are returned. If OIDs 1.2.3.4.1 and 1.2.3.4.2 are the only items below the query object they would be returned. The query SHALL NOT return items outside the OID. For example; if 1.2.3.4 is the query OID then 1.2.3.5 is not returned.

Parameters:
oid - The object identifier to search for. The format of the string is based on the format defined by RFC 2578 for OBJECT IDENTIFIER definition. Terms in the string are period delimited, e.g. "1.3.6.1.4.1".
Returns:
An array of MIB definitions. The array is lexographically ordered by increasing value of OID with the lowest value in the first element of the array.