org.opennms.netmgt.provision.service.snmp
Class IfXTable

java.lang.Object
  extended by org.opennms.netmgt.snmp.CollectionTracker
      extended by org.opennms.netmgt.snmp.AggregateTracker
          extended by org.opennms.netmgt.provision.service.snmp.SnmpTable<IfXTableEntry>
              extended by org.opennms.netmgt.provision.service.snmp.IfXTable
All Implemented Interfaces:
Collectable

public final class IfXTable
extends SnmpTable<IfXTableEntry>

The IfXTable uses a SnmpSession to collect the entries in the remote agent's interface extensions table. It implements the SnmpHandler to receive notifications and handle errors associated with the data collection. Data is collected using a series of GETNEXT PDU request to walk multiple parts of the interface table at once. The number of SNMP packets should not exceed the number of interface + 1, assuming no lost packets or error conditions occur.

Author:
Mike , Weave
See Also:
RFC2233

Field Summary
 
Fields inherited from class org.opennms.netmgt.snmp.CollectionTracker
GEN_ERR, NO_ERR, NO_SUCH_NAME_ERR, TOO_BIG_ERR
 
Constructor Summary
IfXTable(InetAddress address)
           Constructs an IfXTable object that is used to collect the interface elements from the remote agent.
IfXTable(InetAddress address, Set<SnmpInstId> ifIndices)
          Constructor for IfXTable.
 
Method Summary
protected  IfXTableEntry createTableEntry(SnmpObjId base, SnmpInstId inst, Object val)
          createTableEntry
 String getIfAlias(int ifIndex)
          getIfAlias
 String getIfName(int ifIndex)
          getIfName
 void updateSnmpInterfaceData(OnmsNode node)
          updateSnmpInterfaceData
 void updateSnmpInterfaceData(OnmsNode node, Integer ifIndex)
          updateSnmpInterfaceData
 
Methods inherited from class org.opennms.netmgt.provision.service.snmp.SnmpTable
getEntries, getEntry, getEntry, getInstances, reportGenErr, reportNoSuchNameErr, storeResult
 
Methods inherited from class org.opennms.netmgt.snmp.AggregateTracker
buildNextPdu, isFinished, setFailed, setMaxRepetitions, setTimedOut
 
Methods inherited from class org.opennms.netmgt.snmp.CollectionTracker
failed, getCollectionTracker, getParent, reportTooBigErr, setFinished, setParent, timedOut
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

IfXTable

public IfXTable(InetAddress address)

Constructs an IfXTable object that is used to collect the interface elements from the remote agent. Once all the interfaces are collected, or there is an error in the collection the signaler object is notified to inform other threads.

Parameters:
address - TODO
See Also:
IfXTableEntry

IfXTable

public IfXTable(InetAddress address,
                Set<SnmpInstId> ifIndices)

Constructor for IfXTable.

Parameters:
address - a InetAddress object.
ifIndices - a Set object.
Method Detail

createTableEntry

protected IfXTableEntry createTableEntry(SnmpObjId base,
                                         SnmpInstId inst,
                                         Object val)

createTableEntry

Specified by:
createTableEntry in class SnmpTable<IfXTableEntry>
Parameters:
base - a SnmpObjId object.
inst - a SnmpInstId object.
val - a Object object.
Returns:
a T object.

getIfName

public String getIfName(int ifIndex)

getIfName

Parameters:
ifIndex - a int.
Returns:
a String object.

getIfAlias

public String getIfAlias(int ifIndex)

getIfAlias

Parameters:
ifIndex - a int.
Returns:
a String object.

updateSnmpInterfaceData

public void updateSnmpInterfaceData(OnmsNode node)

updateSnmpInterfaceData

Parameters:
node - a OnmsNode object.

updateSnmpInterfaceData

public void updateSnmpInterfaceData(OnmsNode node,
                                    Integer ifIndex)

updateSnmpInterfaceData

Parameters:
node - a OnmsNode object.
ifIndex - a Integer object.


Copyright © 2011. All Rights Reserved.