- java.lang.Object
-
- org.snmp4j.agent.request.AbstractRequest<SnmpRequest.SnmpSubRequest,org.snmp4j.CommandResponderEvent<?>,org.snmp4j.PDU>
-
- org.snmp4j.agent.request.SnmpRequest
-
- All Implemented Interfaces:
Request<org.snmp4j.CommandResponderEvent<?>,org.snmp4j.PDU,SnmpRequest.SnmpSubRequest>
public class SnmpRequest extends AbstractRequest<SnmpRequest.SnmpSubRequest,org.snmp4j.CommandResponderEvent<?>,org.snmp4j.PDU>
TheSnmpRequestclass implements requests from a SNMP source.- Version:
- 1.2
- Author:
- Frank Fock
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description classSnmpRequest.SnmpSubRequestThe SnmpSubRequest represents a single variable binding request of a SNMP PDU.classSnmpRequest.SnmpSubRequestIteratorTheSnmpRequest.SnmpSubRequestIteratorimplements an iterator over the GETBULK repetitions of a subrequest.
-
Field Summary
Fields Modifier and Type Field Description static org.snmp4j.smi.OctetStringDEFAULT_CONTEXTprotected Map<Object,Object>processingUserObjects-
Fields inherited from class org.snmp4j.agent.request.AbstractRequest
errorStatus, phase, repeaterRowSize, repeaterStartIndex, reprocessCounter, response, source, subrequests, transactionID
-
Fields inherited from interface org.snmp4j.agent.request.Request
PHASE_1PC, PHASE_2PC_CLEANUP, PHASE_2PC_COMMIT, PHASE_2PC_PREPARE, PHASE_2PC_UNDO, PHASE_INIT
-
-
Constructor Summary
Constructors Constructor Description SnmpRequest(org.snmp4j.CommandResponderEvent<?> request, CoexistenceInfo cinfo)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidaddRepeaterSubRequest()protected voidassignErrorStatus2Response()CoexistenceInfogetCoexistenceInfo()intgetCompleteRepetitions()Returns the number of repetitions that are complete.org.snmp4j.smi.OctetStringgetContext()Gets the context of the request.intgetErrorIndex()protected intgetMaxPhase()intgetMaxRepetitions()intgetMessageProcessingModel()intgetNonRepeaters()ObjectgetProcessingUserObject(Object key)Gets the processing user object for the specified key.intgetRepeaterCount()org.snmp4j.PDUgetResponse()Return the response PDU.intgetSecurityLevel()intgetSecurityModel()org.snmp4j.smi.OctetStringgetSecurityName()intgetTransactionID()org.snmp4j.smi.OctetStringgetViewName()intgetViewType()static intgetViewType(int pduType)Returns the VACM view type for the supplied PDU type.protected booleanis2PC()booleanisBulkRequest()booleanisPhaseComplete()Checks whether the current phase is complete.Iterator<SnmpRequest.SnmpSubRequest>iterator()iteratorstatic intnextTransactionID()ObjectsetProcessingUserObject(Object key, Object value)Sets an user object association.voidsetRequestEvent(org.snmp4j.CommandResponderEvent<?> source)protected voidsetupSubRequests()voidsetViewName(org.snmp4j.smi.OctetString viewName)intsize()Gets the number of sub-requests in this request.-
Methods inherited from class org.snmp4j.agent.request.AbstractRequest
equals, find, get, getErrorStatus, getPhase, getReprocessCounter, getSource, hashCode, incReprocessCounter, initSubRequests, isComplete, nextPhase, resetCompletionStatus, resetProcessedStatus, setErrorStatus, setPhase, toString
-
-
-
-
Constructor Detail
-
SnmpRequest
public SnmpRequest(org.snmp4j.CommandResponderEvent<?> request, CoexistenceInfo cinfo)
-
-
Method Detail
-
nextTransactionID
public static int nextTransactionID()
-
setupSubRequests
protected void setupSubRequests()
- Specified by:
setupSubRequestsin classAbstractRequest<SnmpRequest.SnmpSubRequest,org.snmp4j.CommandResponderEvent<?>,org.snmp4j.PDU>
-
getCompleteRepetitions
public int getCompleteRepetitions()
Returns the number of repetitions that are complete.- Returns:
- the minimum
rfor which alli<r*(pduSize-nonRepeaters)SubRequests returned byAbstractRequest.get(int i)return true onSubRequest.isComplete().
-
getMaxRepetitions
public int getMaxRepetitions()
-
getNonRepeaters
public int getNonRepeaters()
-
getMaxPhase
protected int getMaxPhase()
- Specified by:
getMaxPhasein classAbstractRequest<SnmpRequest.SnmpSubRequest,org.snmp4j.CommandResponderEvent<?>,org.snmp4j.PDU>
-
size
public int size()
Description copied from interface:RequestGets the number of sub-requests in this request. For GETBULK requests this number may increase over time.- Returns:
- a positive integer (greater or equal to zero).
-
setRequestEvent
public void setRequestEvent(org.snmp4j.CommandResponderEvent<?> source)
-
assignErrorStatus2Response
protected void assignErrorStatus2Response()
-
getResponse
public org.snmp4j.PDU getResponse()
Return the response PDU.- Specified by:
getResponsein interfaceRequest<org.snmp4j.CommandResponderEvent<?>,org.snmp4j.PDU,SnmpRequest.SnmpSubRequest>- Overrides:
getResponsein classAbstractRequest<SnmpRequest.SnmpSubRequest,org.snmp4j.CommandResponderEvent<?>,org.snmp4j.PDU>- Returns:
- the PDU received as response.
-
iterator
public Iterator<SnmpRequest.SnmpSubRequest> iterator()
iterator- Returns:
- Iterator
-
is2PC
protected boolean is2PC()
-
getContext
public org.snmp4j.smi.OctetString getContext()
Description copied from interface:RequestGets the context of the request.- Returns:
- an
OctetStringinstance.
-
getViewName
public org.snmp4j.smi.OctetString getViewName()
-
setViewName
public void setViewName(org.snmp4j.smi.OctetString viewName)
-
getSecurityLevel
public int getSecurityLevel()
-
getSecurityModel
public int getSecurityModel()
-
getSecurityName
public org.snmp4j.smi.OctetString getSecurityName()
-
getViewType
public int getViewType()
-
getViewType
public static int getViewType(int pduType)
Returns the VACM view type for the supplied PDU type.- Parameters:
pduType- a PDU type.- Returns:
- the corresponding VACM view type.
-
addRepeaterSubRequest
protected void addRepeaterSubRequest()
-
getErrorIndex
public int getErrorIndex()
- Specified by:
getErrorIndexin interfaceRequest<org.snmp4j.CommandResponderEvent<?>,org.snmp4j.PDU,SnmpRequest.SnmpSubRequest>- Overrides:
getErrorIndexin classAbstractRequest<SnmpRequest.SnmpSubRequest,org.snmp4j.CommandResponderEvent<?>,org.snmp4j.PDU>
-
getTransactionID
public int getTransactionID()
- Specified by:
getTransactionIDin interfaceRequest<org.snmp4j.CommandResponderEvent<?>,org.snmp4j.PDU,SnmpRequest.SnmpSubRequest>- Overrides:
getTransactionIDin classAbstractRequest<SnmpRequest.SnmpSubRequest,org.snmp4j.CommandResponderEvent<?>,org.snmp4j.PDU>
-
getCoexistenceInfo
public CoexistenceInfo getCoexistenceInfo()
-
getMessageProcessingModel
public int getMessageProcessingModel()
-
getRepeaterCount
public int getRepeaterCount()
-
isPhaseComplete
public boolean isPhaseComplete()
Description copied from interface:RequestChecks whether the current phase is complete.- Returns:
trueif all required processing has been finished for the current request phase. For single phase request types this method returns the same result asRequest.isComplete().
-
isBulkRequest
public boolean isBulkRequest()
- Specified by:
isBulkRequestin classAbstractRequest<SnmpRequest.SnmpSubRequest,org.snmp4j.CommandResponderEvent<?>,org.snmp4j.PDU>
-
getProcessingUserObject
public Object getProcessingUserObject(Object key)
Description copied from interface:RequestGets the processing user object for the specified key. By default there is no such object associated with a request, butManagedObjects may put their own objects into the request (for example to avoid unnecessary updates on behalf of the same request).- Parameters:
key- an Object.- Returns:
- the associated Object or
nullif their exists no such association.
-
setProcessingUserObject
public Object setProcessingUserObject(Object key, Object value)
Description copied from interface:RequestSets an user object association.- Parameters:
key- a key Object.value- a value Object associated withkey.- Returns:
- the previous value associated with
keyornullif no such association existed.
-
-