In the SNMPv1/v2 master agent example, proxy registration is identical to standard MIB registration. The proxies are created as shown in the following example.
[...]
// First we need to create a peer to the distant sub agent.
//
final SnmpPeer peer =
new SnmpPeer(host, Integer.parseInt(port));
final SnmpParameters p = new SnmpParameters();
// The sub agent is seen as a SNMPv2.
//
p.setProtocolVersion(SnmpDefinitions.snmpVersionTwo);
//Set the parameters to the peer.
//
peer.setParams(p);
// SnmpProxy creation.
//
final SnmpProxy proxy = new SnmpProxy(snmpAdaptor.getEngine(),
peer,"1.3.6.1.2.1");
// A SnmpProxy is also an MBean. Register it in the
// MBeanServer.
//
proxyObjName= new ObjectName("snmp:class=SnmpProxy");
server.registerMBean(proxy, proxyObjName);
proxy.setSnmpAdaptorName(snmpObjName);
[...]
To instantiate and register the proxy, the MasterAgent example first of all creates a peer to the subagent using new SnmpPeer(), and creates security parameters p using the SnmpParameters() method. It then sets the subagent as an SMNPv2 agent using setProtocolVersion.
The MasterAgent passes the parameters p to the new peer using peer.setParams. Finally, MasterAgent creates the proxy, passing it the following information:
The adaptor's engine ID, via snmpAdaptor.getEngine()
The peer
The distant MIB's OID, 1.3.6.1.2.1