/** * This is a factory method for creating new SnmpMibRequest objects. * @param reqPdu The received PDU. * @param vblist The vector of SnmpVarBind objects in which the * MIB concerned by this request is involved. * @param version The protocol version of the SNMP request. * @param userData User allocated contextual data. * * @return A new SnmpMibRequest object. * * @since 1.5 **/ public static SnmpMibRequest newMibRequest(SnmpPdu reqPdu, Vector<SnmpVarBind> vblist, int version, Object userData) { return new SnmpMibRequestImpl(null, reqPdu, vblist, version, userData, null, SnmpDefinitions.noAuthNoPriv, getSecurityModel(version), null,null); }
/** * This is a factory method for creating new SnmpMibRequest objects. * @param engine The local engine. * @param reqPdu The received pdu. * @param vblist The vector of SnmpVarBind objects in which the * MIB concerned by this request is involved. * @param version The protocol version of the SNMP request. * @param userData User allocated contextual data. * * @return A new SnmpMibRequest object. * * @since 1.5 **/ public static SnmpMibRequest newMibRequest(SnmpEngine engine, SnmpPdu reqPdu, Vector<SnmpVarBind> vblist, int version, Object userData, String principal, int securityLevel, int securityModel, byte[] contextName, byte[] accessContextName) { return new SnmpMibRequestImpl(engine, reqPdu, vblist, version, userData, principal, securityLevel, securityModel, contextName, accessContextName); }
/** * @param engine The local engine. * @param reqPdu The received pdu. * @param vblist The vector of SnmpVarBind objects in which the * MIB concerned by this request is involved. * @param protocolVersion The protocol version of the SNMP request. * @param userData User allocated contextual data. This object must * be allocated on a per SNMP request basis through the * SnmpUserDataFactory registered with the SnmpAdaptorServer, * and is handed back to the user through SnmpMibRequest objects. */ public SnmpMibRequestImpl(SnmpEngine engine, SnmpPdu reqPdu, Vector<SnmpVarBind> vblist, int protocolVersion, Object userData, String principal, int securityLevel, int securityModel, byte[] contextName, byte[] accessContextName) { varbinds = vblist; version = protocolVersion; data = userData; this.reqPdu = reqPdu; this.engine = engine; this.principal = principal; this.securityLevel = securityLevel; this.securityModel = securityModel; this.contextName = contextName; this.accessContextName = accessContextName; }
private void init(SnmpPdu req, SnmpAdaptorServer server) { this.server = server; // The translation table is easy in this case ... // final int max= translation.length; final SnmpVarBind[] list= req.varBindList; final NonSyncVector<SnmpVarBind> nonSyncVarBind = ((NonSyncVector<SnmpVarBind>)varBind); for(int i=0; i < max; i++) { translation[i]= i; // we need to allocate a new SnmpVarBind. Otherwise the first // sub request will modify the list... // final SnmpVarBind newVarBind = new SnmpVarBind(list[i].oid, list[i].value); nonSyncVarBind.addNonSyncElement(newVarBind); } }
private void init(SnmpAdaptorServer server, SnmpPdu req, int nonRepeat, int maxRepeat, int R) { this.server = server; this.nonRepeat= nonRepeat; this.maxRepeat= maxRepeat; this.globalR= R; final int max= translation.length; final SnmpVarBind[] list= req.varBindList; final NonSyncVector<SnmpVarBind> nonSyncVarBind = ((NonSyncVector<SnmpVarBind>)varBind); for(int i=0; i < max; i++) { translation[i]= i; // we need to allocate a new SnmpVarBind. Otherwise the first // sub request will modify the list... // final SnmpVarBind newVarBind = new SnmpVarBind(list[i].oid, list[i].value); nonSyncVarBind.addNonSyncElement(newVarBind); } }
/** * SNMP V1/V2 . To be called with updateRequest. */ protected SnmpSubRequestHandler(SnmpMibAgent agent, SnmpPdu req) { if (SNMP_ADAPTOR_LOGGER.isLoggable(Level.FINER)) { SNMP_ADAPTOR_LOGGER.logp(Level.FINER, SnmpSubRequestHandler.class.getName(), "constructor", "creating instance for request " + String.valueOf(req.requestId)); } version= req.version; type= req.type; this.agent= agent; // We get a ref on the pdu in order to pass it to SnmpMibRequest. reqPdu = req; //Pre-allocate room for storing varbindlist and translation table. // int length= req.varBindList.length; translation= new int[length]; varBind= new NonSyncVector<SnmpVarBind>(length); }
/** * SNMP V1/V2 The constructor initialize the subrequest with the whole varbind list contained * in the original request. */ @SuppressWarnings("unchecked") // cast to NonSyncVector<SnmpVarBind> protected SnmpSubRequestHandler(SnmpMibAgent agent, SnmpPdu req, boolean nouse) { this(agent,req); // The translation table is easy in this case ... // int max= translation.length; SnmpVarBind[] list= req.varBindList; for(int i=0; i < max; i++) { translation[i]= i; ((NonSyncVector<SnmpVarBind>)varBind).addNonSyncElement(list[i]); } }