FileDocCategorySizeDatePackage
SnmpMibSubRequest.javaAPI DocJava SE 5 API8025Fri Aug 26 14:55:04 BST 2005com.sun.jmx.snmp.agent

SnmpMibSubRequest

public interface SnmpMibSubRequest implements SnmpMibRequest
This interface models an SNMP sub request to be performed on a specific SNMP MIB node. The node involved can be either an SNMP group, an SNMP table, or an SNMP table entry (conceptual row). The conceptual row may or may not already exist. If the row did not exist at the time when the request was received, the isNewEntry() method will return true.

Objects implementing this interface will be allocated by the SNMP engine. You will never need to implement this interface. You will only use it.

This API is a Sun Microsystems internal API and is subject to change without notice.

Fields Summary
Constructors Summary
Methods Summary
public java.util.EnumerationgetElements()
Return the list of varbind to be handled by the SNMP MIB node.

Note:

    In case of SET operation, if this node is a table row which contains a control variable (as identified by the table's isRowStatus() method) the control variable will not be included in this list: it will be obtained by calling getRowStatusVarBind(). This will allow you to handle the control variable specifically.
    You will never need to worry about this unless you need to implement a non standard mechanism for handling row creation and deletion.

return
The elements of the enumeration are instances of {@link com.sun.jmx.snmp.SnmpVarBind}

public com.sun.jmx.snmp.SnmpOidgetEntryOid()
Return the part of the OID identifying the table entry involved.

return
{@link com.sun.jmx.snmp.SnmpOid} or null if the request is not directed to an entry.

public com.sun.jmx.snmp.SnmpVarBindgetRowStatusVarBind()
Return the varbind that holds the RowStatus variable. It corresponds to the varbind that was identified by the isRowStatus() method generated by mibgen on {@link com.sun.jmx.snmp.agent.SnmpMibTable} derivatives.
  • In SMIv2, it is the varbind which contains the columnar object implementing the RowStatus TEXTUAL-CONVENTION.
  • In SMIv1 nothing special is generated
    • You may however subclass the generated table metadata class in order to provide your own implementation of isRowStatus(), getRowAction(), isRowReady() and setRowStatus() (see {@link com.sun.jmx.snmp.agent.SnmpMibTable}).

return
a varbind that serves to control the table modification. null means that no such varbind could be identified.
Note:The runtime will only try to identify the RowStatus varbind when processing an SNMP SET request. In this case, the identified varbind will not be included in the set of varbinds returned by getSubList() and getElements().

public java.util.VectorgetSubList()
Return the list of varbind to be handled by the SNMP MIB node.

Note:

    In case of SET operation, if this node is a table row which contains a control variable (as identified by the table's isRowStatus() method) the control variable will not be included in this list: it will be obtained by calling getRowStatusVarBind(). This will allow you to handle the control variable specifically.
    You will never need to worry about this unless you need to implement a non standard mechanism for handling row creation and deletion.

return
The elements of the vector are instances of {@link com.sun.jmx.snmp.SnmpVarBind}

public booleanisNewEntry()
Indicate whether the entry involved is a new entry. This method will return true if the entry was not found when the request was processed. As a consequence, true means that either the entry does not exist yet, or it has been created while processing this request. The result of this method is only significant when an entry is involved.

return
true If the entry did not exist, or false if the entry involved was found.

public voidregisterCheckException(com.sun.jmx.snmp.SnmpVarBind varbind, com.sun.jmx.snmp.SnmpStatusException exception)
This method should be called when a status exception needs to be raised when checking a given varbind for an SNMP SET request. This method performs all the necessary conversions (SNMPv1 <=> SNMPv2) and propagates the exception if needed. This method also takes care of setting the correct value of the index field.

param
varbind The varbind for which the exception is registered. Note that this varbind must have been obtained from the enumeration returned by getElements(), or from the vector returned by getSubList()
param
exception The exception to be registered for the given varbind.

public voidregisterGetException(com.sun.jmx.snmp.SnmpVarBind varbind, com.sun.jmx.snmp.SnmpStatusException exception)
This method should be called when a status exception needs to be raised for a given varbind of an SNMP GET request. This method performs all the necessary conversions (SNMPv1 <=> SNMPv2) and propagates the exception if needed: If the version is SNMP v1, the exception is propagated. If the version is SNMP v2, the exception is stored in the varbind. This method also takes care of setting the correct value of the index field.

param
varbind The varbind for which the exception is registered. Note that this varbind must have been obtained from the enumeration returned by getElements(), or from the vector returned by getSubList()
param
exception The exception to be registered for the given varbind.

public voidregisterSetException(com.sun.jmx.snmp.SnmpVarBind varbind, com.sun.jmx.snmp.SnmpStatusException exception)
This method should be called when a status exception needs to be raised for a given varbind of an SNMP SET request. This method performs all the necessary conversions (SNMPv1 <=> SNMPv2) and propagates the exception if needed. This method also takes care of setting the correct value of the index field.

param
varbind The varbind for which the exception is registered. Note that this varbind must have been obtained from the enumeration returned by getElements(), or from the vector returned by getSubList()
param
exception The exception to be registered for the given varbind.