Class IfTable
- java.lang.Object
-
- org.opennms.netmgt.snmp.CollectionTracker
-
- org.opennms.netmgt.snmp.AggregateTracker
-
- org.opennms.netmgt.provision.service.snmp.SnmpTable<IfTableEntry>
-
- org.opennms.netmgt.provision.service.snmp.IfTable
-
- All Implemented Interfaces:
Collectable,ProxiableTracker
public final class IfTable extends SnmpTable<IfTableEntry>
The IfTable uses a SnmpSession to collect the entries in the remote agent's interface 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.
Addition by Jon Whetzel
IfTable has an extra class variable for the SNMP version setting. If this is set for SNMPv2, then a GETBULK command will be used for retrieving the necessary data. Otherwise, the method will resort to its previous implementation with GETNEXT commands.
-
-
Constructor Summary
Constructors Constructor Description IfTable(InetAddress address)Constructs an IfTable object that is used to collect the interface elements from the remote agent.IfTable(InetAddress address, Set<SnmpInstId> ifIndices)Constructor for IfTable.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected IfTableEntrycreateTableEntry(SnmpObjId base, SnmpInstId inst, Object val)createTableEntryIntegergetAdminStatus(int ifIndex)getAdminStatusStringgetIfDescr(int ifIndex)getIfDescrSet<Integer>getIfIndices()getIfIndicesLonggetIfSpeed(int ifIndex)getIfSpeedIntegergetIfType(int ifIndex)getIfTypeIntegergetOperStatus(int ifIndex)getOperStatusStringgetPhysAddr(int ifIndex)getPhysAddrvoidupdateSnmpInterfaceData(OnmsNode node)updateSnmpInterfaceDatavoidupdateSnmpInterfaceData(OnmsNode node, Integer ifIndex)updateSnmpInterfaceData-
Methods inherited from class org.opennms.netmgt.provision.service.snmp.SnmpTable
getEntries, getEntry, getEntry, getInstances, reportFatalErr, reportGenErr, reportNonFatalErr, reportNoSuchNameErr, storeResult
-
Methods inherited from class org.opennms.netmgt.snmp.AggregateTracker
buildNextPdu, getWalkRequests, handleWalkResponses, isFinished, setFailed, setMaxRepetitions, setMaxRetries, setTimedOut
-
Methods inherited from class org.opennms.netmgt.snmp.CollectionTracker
failed, getCollectionTracker, getParent, reportTooBigErr, setFinished, setParent, timedOut
-
-
-
-
Constructor Detail
-
IfTable
public IfTable(InetAddress address)
Constructs an IfTable 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:
IfTableEntry
-
IfTable
public IfTable(InetAddress address, Set<SnmpInstId> ifIndices)
Constructor for IfTable.
- Parameters:
address- aInetAddressobject.ifIndices- aSetobject.
-
-
Method Detail
-
createTableEntry
protected IfTableEntry createTableEntry(SnmpObjId base, SnmpInstId inst, Object val)
createTableEntry
- Specified by:
createTableEntryin classSnmpTable<IfTableEntry>- Parameters:
base- aSnmpObjIdobject.inst- aSnmpInstIdobject.val- aObjectobject.- Returns:
- a T object.
-
getOperStatus
public Integer getOperStatus(int ifIndex)
getOperStatus
- Parameters:
ifIndex- a int.- Returns:
- a
Integerobject.
-
getAdminStatus
public Integer getAdminStatus(int ifIndex)
getAdminStatus
- Parameters:
ifIndex- a int.- Returns:
- a
Integerobject.
-
getIfType
public Integer getIfType(int ifIndex)
getIfType
- Parameters:
ifIndex- a int.- Returns:
- a
Integerobject.
-
getIfDescr
public String getIfDescr(int ifIndex)
getIfDescr
- Parameters:
ifIndex- a int.- Returns:
- a
Stringobject.
-
getIfSpeed
public Long getIfSpeed(int ifIndex)
getIfSpeed
- Parameters:
ifIndex- a int.- Returns:
- a
Longobject.
-
getPhysAddr
public String getPhysAddr(int ifIndex)
getPhysAddr
- Parameters:
ifIndex- a int.- Returns:
- a
Stringobject.
-
updateSnmpInterfaceData
public void updateSnmpInterfaceData(OnmsNode node)
updateSnmpInterfaceData
- Parameters:
node- aOnmsNodeobject.
-
updateSnmpInterfaceData
public void updateSnmpInterfaceData(OnmsNode node, Integer ifIndex)
updateSnmpInterfaceData
-
-