![]() ![]() ![]() |
The high level API is a set of UI and non-UI Java components, which act as a standard reference base for both application developer and tool vendors. This allows building more flexible applications, applets, and components. A number of enhancements have been added as well, making the use of the high-level APIs much more productive in building applications. The components can be used in any Java Bean Builder or directly in the Java code.
The purpose of the high-level APIs is to make it easier to develop management applications using the SNMP libraries. The benefits of using the high-level APIs include:
Increased functionality using library methods, which includes the performance of GET, GETNEXT, GETBULK, and SET operations on multiple variables, sending traps, getting all instances of variables under an object identifier, etc.
Usage of WebNMS SNMP Java components in Bean Builder.
Increased support for SNMP tables.
The following are the points to be noted while using the high-level APIs.
The high-level beans are lightweight sharing the underlying resources, such as SnmpSession, SnmpAPI, and MibOperations. The bean components hide the complexities of using the low-level APIs.
While instantiating these beans in applets, you have to pass the applet instance so that it can internally use the SAS for performing SNMP operations. Therefore, all the complexities of using low-level APIs and SAS are hidden from the user and taken care by the high-level API.
Sometimes, it may become necessary for a bean to use a separate session instead of sharing the same session with other beans. In such cases, the beans have to be instantiated with the port and session name as arguments.
To use the transport provider, where you can plug-in your own transport protocol, the constructor that takes ProtocolOptions as the argument can be used. The API implements the UDP/IP as the default protocol implementation and provides TCP/IP as the reference implementation.
For synchronous operations, the SnmpTarget bean can be used and for asynchronous operations, the SnmpRequestServer bean can be used.
The MibBrowser bean which is a full fledged UI component for management operations, makes use of the SnmpRequestServer bean.
The non-UI beans, which uses the low-level API and MIBs, form the backbone of the high-level API and the UI beans are built on top of the non-UI beans.
The following are the components available in the beans package that can be used in developing management applications or applets.
SnmpTarget - for synchronous SNMP operations.
SnmpRequestServer - for asynchronous SNMP operations.
SnmpPoller - for polling SNMP data with specified polling intervals.
SnmpTrapReceiver - for receiving traps.
NotificationAdaptor - for using with TrapReceiver.
SnmpTable - for working with tabular SNMP data.
The above components are not user interface components.
The following UI beans are provided in the ui package.
SnmpTableModel is an extension of the SnmpTable component in the beans package and is designed for working with JFC-swing components.
TableBean is an implementation of the combination of the JTable and the SnmpTableModel components, where JTable provides the view/controller and the SnmpTableModel is the model.
SnmpTablePanel is a component for working with large tables.
TrapParserBean is used for parsing the trap events.
TrapBrowser is used to display the traps received by the TrapReceiver.
TrapViewer is used to receive the traps and display the trap information.
LineGraphBean is for plotting the polled data from SNMP data sources.
MibTree is for viewing the SNMP MIBs in applets and applications.
MibBrowser is an SNMP MIB browser that can be embedded in any management application or applet.
PropertySettings is used for setting properties of other bean components.
PropertyCombiner component is for passing one object from one bean to group of other beans. This is mainly used for setting properties of SNMP beans.
![]() ![]() ![]() |