Module org.snmp4j

Class TreeUtils


public class TreeUtils extends AbstractSnmpUtility
  • Constructor Details

    • TreeUtils

      public TreeUtils(Session snmpSession, PDUFactory pduFactory)
      Creates a TreeUtils instance. The created instance is thread safe as long as the supplied Session and PDUFactory are thread safe.
      Parameters:
      snmpSession - a SNMP Session instance.
      pduFactory - a PDUFactory instance that creates the PDU that are used by this instance to retrieve MIB tree data using GETBULK/GETNEXT operations.
  • Method Details

    • getSubtree

      public List<TreeEvent> getSubtree(Target<?> target, OID rootOID)
      Gets a subtree with GETNEXT (SNMPv1) or GETBULK (SNMP2c, SNMPv3) operations from the specified target synchronously.
      Parameters:
      target - a Target that specifies the target command responder including its network transport address.
      rootOID - the OID that specifies the root of the sub-tree to retrieve (not included).
      Returns:
      a possibly empty List of TreeEvent instances where each instance carries zero or more values (or an error condition) in depth-first-order.
    • walk

      public List<TreeEvent> walk(Target<?> target, OID[] rootOIDs)
      Walks a subtree with GETNEXT (SNMPv1) or GETBULK (SNMP2c, SNMPv3) operations from the specified target synchronously.
      Parameters:
      target - a Target that specifies the target command responder including its network transport address.
      rootOIDs - the OIDs which specify the subtrees to walk. Each OID defines a sub-tree that is walked. The walk ends if (a) an SNMP error occurs, (b) all returned variable bindings for an iteration contain an exception value (i.e., Null.endOfMibView) or for each rootOIDs element, the returned VariableBinding's OID has not the same prefix, (c) a VariableBinding out of lexicographic order is returned.
      Returns:
      a possibly empty List of TreeEvent instances where each instance carries zero or rootOIDs.length values.
      Since:
      2.1
    • getSubtree

      public void getSubtree(Target<?> target, OID rootOID, Object userObject, TreeListener listener)
      Gets a subtree with GETNEXT (SNMPv1) or GETBULK (SNMP2c, SNMPv3) operations from the specified target asynchronously.
      Parameters:
      target - a Target that specifies the target command responder including its network transport address.
      rootOID - the OID that specifies the root of the sub-tree to retrieve (not included).
      userObject - an optional user object that will be transparently handed over to the supplied TreeListener.
      listener - the TreeListener that processes the TreeEvents generated by this method. Each event object may carry zero or more object instances from the sub-tree in depth-first-order.
    • walk

      public void walk(Target<?> target, OID[] rootOIDs, Object userObject, TreeListener listener)
      Walks a subtree with GETNEXT (SNMPv1) or GETBULK (SNMP2c, SNMPv3) operations from the specified target asynchronously.
      Parameters:
      target - a Target that specifies the target command responder including its network transport address.
      rootOIDs - the OIDs which specify the subtrees to walk. Each OID defines a sub-tree that is walked. The walk ends if (a) an SNMP error occurs, (b) all returned variable bindings for an iteration contain an exception value (i.e., Null.endOfMibView) or for each rootOIDs element, the returned VariableBinding's OID has not the same prefix, (c) a VariableBinding out of lexicographic order is returned.
      userObject - an optional user object that will be transparently handed over to the supplied TreeListener.
      listener - the TreeListener that processes the TreeEvents generated by this method. Each event object may carry zero or more object instances from the sub-tree in depth-first-order if rootOIDs has a single element. If it has more than one element, then each TreeEvent contains the variable bindings of each iteration.
      Since:
      2.1
    • setMaxRepetitions

      public void setMaxRepetitions(int maxRepetitions)
      Sets the maximum number of the variable bindings per TreeEvent returned by this instance.
      Parameters:
      maxRepetitions - the maximum repetitions used for GETBULK requests. For SNMPv1 this values has no effect (it is then implicitly one).
    • setIgnoreLexicographicOrder

      public void setIgnoreLexicographicOrder(boolean ignoreLexicographicOrder)
      Set the ignore lexicographic order errors flage value.
      Parameters:
      ignoreLexicographicOrder - true to ignore lexicographic order errors, false otherwise (default).
      Since:
      1.10.1
    • getMaxRepetitions

      public int getMaxRepetitions()
      Gets the maximum number of the variable bindings per TreeEvent returned by this instance.
      Returns:
      the maximum repetitions used for GETBULK requests. For SNMPv1 this values has no effect (it is then implicitly one).
    • isIgnoreLexicographicOrder

      public boolean isIgnoreLexicographicOrder()
      Return the ignore lexicographic order errors flage value.
      Returns:
      true if lexicographic order errors are ignored, false otherwise (default).
      Since:
      1.10.1