SNMP4J-Model provides helper classes to use SNMP data in Java applications without the need of direct SNMP operations or type conversions.
The SNMP4J API is the base and SNMP4J-Model adds proxies for scalar and tabular objects based on SNMP data from one or many SNMP agents.
SNMP4J-SMI-PRO can be added to use run-time SNMP MIB information for the data mapping between the model representation and SNMP(4J) data types.
The model representation is customizable by the use of Java generics. The default representation for all SNMP types in the model is String. Conversions to other Java native types are also supported were applicable.
SNMP4J-Model extends SNMP4J by the following SNMP manager/command generator features:
- Proxy objects for scalars, tables, and sub-trees.
- A data mapping framework to map SNMP types to Java native types (at runtime SNMP4J-SMI-PRO is required).
- Queued updates and refreshes to avoid agent/command responder overload.
- A multi-threading support that retains atomicity of SET operations on user request.
- Code generation for SNMP managers/clients/command generators from MIB specifications with AgenPro: A language and API independent template based code generator with round-trip generation facilities. AgenPro generates data mappings to/from the model type String, a run-time mapping with SNMP4J-SMI-PRO is not needed then.