| org.snmp4j.MessageDispatcher
All known Subclasses: org.snmp4j.MessageDispatcherImpl, org.snmp4j.util.MultiThreadedMessageDispatcher,
MessageDispatcher | public interface MessageDispatcher extends TransportListener(Code) | | The MessageDispatcher interface defines common services of
instances that process incoming SNMP messages and dispatch them to
interested
CommandResponder instances. It also provides a service
to send out outgoing SNMP messages.
A MessageDispatcher needs at least one
TransportMapping and at least one
MessageProcessingModel in order to be able to
process any messages.
author: Frank Fock version: 1.6 |
Method Summary | |
void | addCommandResponder(CommandResponder listener) Adds a
CommandResponder instance to the message dispatcher. | void | addMessageProcessingModel(MessageProcessingModel model) Adds a
MessageProcessingModel to the dispatcher. | void | addTransportMapping(TransportMapping transport) Adds a
TransportMapping to the dispatcher. | MessageProcessingModel | getMessageProcessingModel(int messageProcessingModel) Gets the MessageProcessingModel for the supplied message
processing model ID. | int | getNextRequestID() Gets the next unique request ID. | TransportMapping | getTransport(Address destAddress) Returns a transport mapping that can handle the supplied address. | Collection | getTransportMappings() Gets the Collection of transport mappings in this message
dispatcher. | void | processMessage(TransportMapping sourceTransport, Address incomingAddress, BERInputStream wholeMessage) Process an incoming SNMP message. | void | processMessage(TransportMapping sourceTransport, Address incomingAddress, ByteBuffer wholeMessage) Process an incoming SNMP message. | void | releaseStateReference(int messageProcessingModel, PduHandle pduHandle) Release any state references associated with the supplied
PduHandle in the specified message processing model. | void | removeCommandResponder(CommandResponder listener) Removes a previously added
CommandResponder instance from
the message dispatcher. | void | removeMessageProcessingModel(MessageProcessingModel model) Removes a previously added
MessageProcessingModel from
the dispatcher. | TransportMapping | removeTransportMapping(TransportMapping transport) Removes a previously added
TransportMapping from
the dispatcher. | int | returnResponsePdu(int messageProcessingModel, int securityModel, byte[] securityName, int securityLevel, PDU pdu, int maxSizeResponseScopedPDU, StateReference stateReference, StatusInformation statusInformation) Returns a response PDU to the sender of the corresponding request PDU. | PduHandle | sendPdu(TransportMapping transportMapping, Address transportAddress, int messageProcessingModel, int securityModel, byte[] securityName, int securityLevel, PDU pdu, boolean expectResponse) Sends a PDU to the supplied transport address.
Parameters: transportMapping - the TransportMapping to be used to send the PDU. | PduHandle | sendPdu(TransportMapping transportMapping, Address transportAddress, int messageProcessingModel, int securityModel, byte[] securityName, int securityLevel, PDU pdu, boolean expectResponse, PduHandleCallback callback) Sends a PDU to the supplied transport address and returns the
PduHandle that uniquely identifies the request as response
after the request has been sent and otional, if a
PduHandleCallback is given, it returns also the
PduHandle just before the request is sent through the
the callback interface.
Parameters: transportMapping - the TransportMapping to be used to send the PDU. | PduHandle | sendPdu(Address transportAddress, int messageProcessingModel, int securityModel, byte[] securityName, int securityLevel, PDU pdu, boolean expectResponse) Sends a PDU to the supplied transport address. |
addMessageProcessingModel | void addMessageProcessingModel(MessageProcessingModel model)(Code) | | Adds a
MessageProcessingModel to the dispatcher. In order to
support a specific SNMP protocol version, the message dispatcher needs
a message processing model to process messages before they can be
dispatched.
Parameters: model - a MessageProcessingModel instance. |
addTransportMapping | void addTransportMapping(TransportMapping transport)(Code) | | Adds a
TransportMapping to the dispatcher. The transport mapping
is used to send and receive messages to/from the network.
Parameters: transport - a TransportMapping instance. |
getMessageProcessingModel | MessageProcessingModel getMessageProcessingModel(int messageProcessingModel)(Code) | | Gets the MessageProcessingModel for the supplied message
processing model ID.
Parameters: messageProcessingModel - a message processing model ID(see MessageProcessingModel.getID).a MessageProcessingModel instance if the ID is known, otherwisenull |
getNextRequestID | int getNextRequestID()(Code) | | Gets the next unique request ID. The returned ID is unique across
the last 2^31-1 IDs generated by this message dispatcher.
an integer value in the range 1..2^31-1. The returned ID can be usedto map responses to requests send through this message dispatcher. since: 1.1 |
getTransport | TransportMapping getTransport(Address destAddress)(Code) | | Returns a transport mapping that can handle the supplied address.
Parameters: destAddress - an Address instance.a TransportMapping instance that can be used to senta SNMP message to destAddress or null ifsuch a transport mapping does not exists. since: 1.6 |
getTransportMappings | Collection getTransportMappings()(Code) | | Gets the Collection of transport mappings in this message
dispatcher.
a Collection with the registered transport mappings. |
processMessage | void processMessage(TransportMapping sourceTransport, Address incomingAddress, BERInputStream wholeMessage)(Code) | | Process an incoming SNMP message. The message is processed and dispatched
according to the message's content, the message processing models, and the
command responder available to the dispatcher.
Parameters: sourceTransport - a TransportMapping instance denoting the transport thatreceived the message and that will be used to send any responses tothis message. The sourceTransport has to support theincomingAddress 's implementation class. Parameters: incomingAddress - the Address from which the message has been received. Parameters: wholeMessage - an BERInputStream containing the received SNMP message.The supplied input stream must support marks, otherwise anIllegalArgumentException is thrown.MessageDispatcher.processMessage(TransportMapping,Address,ByteBuffer) |
processMessage | void processMessage(TransportMapping sourceTransport, Address incomingAddress, ByteBuffer wholeMessage)(Code) | | Process an incoming SNMP message. The message is processed and dispatched
according to the message's content, the message processing models, and the
command responder available to the dispatcher.
Parameters: sourceTransport - a TransportMapping instance denoting the transport thatreceived the message and that will be used to send any responses tothis message. The sourceTransport has to support theincomingAddress 's implementation class. Parameters: incomingAddress - the Address from which the message has been received. Parameters: wholeMessage - an ByteBuffer containing the received SNMP message. |
releaseStateReference | void releaseStateReference(int messageProcessingModel, PduHandle pduHandle)(Code) | | Release any state references associated with the supplied
PduHandle in the specified message processing model.
Parameters: messageProcessingModel - a message processing model ID. Parameters: pduHandle - the PduHandle that identifies a confirmed class message. See Also: MessageProcessingModel |
removeCommandResponder | void removeCommandResponder(CommandResponder listener)(Code) | | Removes a previously added
CommandResponder instance from
the message dispatcher.
Parameters: listener - a CommandResponder instance. |
removeTransportMapping | TransportMapping removeTransportMapping(TransportMapping transport)(Code) | | Removes a previously added
TransportMapping from
the dispatcher.
Parameters: transport - a TransportMapping instance.the TransportMapping instance supplied if itcould be successfully removed, null otherwise. |
returnResponsePdu | int returnResponsePdu(int messageProcessingModel, int securityModel, byte[] securityName, int securityLevel, PDU pdu, int maxSizeResponseScopedPDU, StateReference stateReference, StatusInformation statusInformation) throws MessageException(Code) | | Returns a response PDU to the sender of the corresponding request PDU.
Parameters: messageProcessingModel - int Parameters: securityModel - int Parameters: securityName - byte[] Parameters: securityLevel - int Parameters: pdu - PDU Parameters: maxSizeResponseScopedPDU - int Parameters: stateReference - StateReference Parameters: statusInformation - StatusInformation throws: MessageException - int |
sendPdu | PduHandle sendPdu(TransportMapping transportMapping, Address transportAddress, int messageProcessingModel, int securityModel, byte[] securityName, int securityLevel, PDU pdu, boolean expectResponse) throws MessageException(Code) | | Sends a PDU to the supplied transport address.
Parameters: transportMapping - the TransportMapping to be used to send the PDU. IftransportMapping is null the messagedispatcher will determine the appropriate transport mapping for thegiven transport address. Parameters: transportAddress - the target transport address. Parameters: messageProcessingModel - typically the SNMP version. Parameters: securityModel - Security Model to use. Parameters: securityName - on behalf of this principal. Parameters: securityLevel - Level of Security requested. Parameters: pdu - the SNMP Protocol Data Unit Parameters: expectResponse - true if a response is expected and a state reference shouldbe saved (if needed for the supplied message processing model).an PduHandle that uniquely identifies this request. throws: MessageException - |
sendPdu | PduHandle sendPdu(TransportMapping transportMapping, Address transportAddress, int messageProcessingModel, int securityModel, byte[] securityName, int securityLevel, PDU pdu, boolean expectResponse, PduHandleCallback callback) throws MessageException(Code) | | Sends a PDU to the supplied transport address and returns the
PduHandle that uniquely identifies the request as response
after the request has been sent and otional, if a
PduHandleCallback is given, it returns also the
PduHandle just before the request is sent through the
the callback interface.
Parameters: transportMapping - the TransportMapping to be used to send the PDU. IftransportMapping is null the messagedispatcher will determine the appropriate transport mapping for thegiven transport address. Parameters: transportAddress - the target transport address. Parameters: messageProcessingModel - typically the SNMP version. Parameters: securityModel - Security Model to use. Parameters: securityName - on behalf of this principal. Parameters: securityLevel - Level of Security requested. Parameters: pdu - the SNMP Protocol Data Unit Parameters: expectResponse - true if a response is expected and a state reference shouldbe saved (if needed for the supplied message processing model). Parameters: callback - an optional callback instance that is informed (if notnull ) about the newly assigned PduHandle just before themessage is sent out.an PduHandle that uniquely identifies this request. throws: MessageException - |
sendPdu | PduHandle sendPdu(Address transportAddress, int messageProcessingModel, int securityModel, byte[] securityName, int securityLevel, PDU pdu, boolean expectResponse) throws MessageException(Code) | | Sends a PDU to the supplied transport address. This method behaves like
a call to
MessageDispatcher.sendPdu(TransportMapping transportMapping,Address transportAddress,int messageProcessingModel,int securityModel,byte[] securityName,int securityLevel,PDU pdu,boolean expectResponse) with transportMapping set to
null .
Parameters: transportAddress - the target transport address. Parameters: messageProcessingModel - typically the SNMP version. Parameters: securityModel - Security Model to use. Parameters: securityName - on behalf of this principal. Parameters: securityLevel - Level of Security requested. Parameters: pdu - the SNMP Protocol Data Unit Parameters: expectResponse - true if a response is expected and a state reference shouldbe saved (if needed for the supplied message processing model).an PduHandle that uniquely identifies this request. throws: MessageException - |
|
|