FileDocCategorySizeDatePackage
SnmpMsgProcessingSubSystem.javaAPI DocJava SE 5 API7180Fri Aug 26 14:55:06 BST 2005com.sun.jmx.snmp.internal

SnmpMsgProcessingSubSystem

public interface SnmpMsgProcessingSubSystem implements SnmpSubSystem
Message processing sub system interface. To allow engine integration, a message processing sub system must implement this interface. This sub system is called by the dispatcher when receiving or sending calls.

This API is a Sun Microsystems internal API and is subject to change without notice.

since
1.5

Fields Summary
Constructors Summary
Methods Summary
public SnmpDecryptedPdudecode(int version, byte[] pdu)
This method returns a decoded scoped pdu. This method decodes only the contextEngineID, contextName and data. It is needed by the SnmpSecurityModel after decryption. It will be routed to the dedicated model according to the version value.

param
version The SNMP protocol version.
param
pdu The encoded pdu.
return
the partialy scoped pdu.

public intencode(int version, SnmpDecryptedPdu pdu, byte[] outputBytes)
This method returns an encoded scoped pdu. This method encodes only the contextEngineID, contextName and data. It is needed by the SnmpSecurityModel for decryption. It will be routed to the dedicated model according to the version value.

param
version The SNMP protocol version.
param
pdu The pdu to encode.
param
outputBytes The partialy scoped pdu.
return
The encoded bytes number.

public intencode(int version, int msgID, int msgMaxSize, byte msgFlags, int msgSecurityModel, com.sun.jmx.snmp.SnmpSecurityParameters params, byte[] contextEngineID, byte[] contextName, byte[] data, int dataLength, byte[] outputBytes)
This method is called to encode a full scoped pdu that as not been encrypted. contextName, contextEngineID and data are known. It will be routed to the dedicated model according to the version value.
The specified parameters are defined in RFC 2572 (see also the {@link com.sun.jmx.snmp.SnmpV3Message} class).

param
version The SNMP protocol version.
param
msgID The SNMP message ID.
param
msgMaxSize The max message size.
param
msgFlags The message flags.
param
msgSecurityModel The message security model.
param
params The security parameters.
param
contextEngineID The context engine ID.
param
contextName The context name.
param
data The encoded data.
param
dataLength The encoded data length.
param
outputBytes The buffer containing the encoded message.
return
The encoded bytes number.

public intencodePriv(int version, int msgID, int msgMaxSize, byte msgFlags, int msgSecurityModel, com.sun.jmx.snmp.SnmpSecurityParameters params, byte[] encryptedPdu, byte[] outputBytes)
This method is called to encode a full scoped pdu that as been encrypted. contextName, contextEngineID and data are not known. It will be routed to the dedicated model according to the version value.
The specified parameters are defined in RFC 2572 (see also the {@link com.sun.jmx.snmp.SnmpV3Message} class).

param
version The SNMP protocol version.
param
msgID The SNMP message ID.
param
msgMaxSize The max message size.
param
msgFlags The message flags.
param
msgSecurityModel The message security model.
param
params The security parameters.
param
encryptedPdu The encrypted pdu.
param
outputBytes The buffer containing the encoded message.
return
The encoded bytes number.

public SnmpIncomingRequestgetIncomingRequest(int model, com.sun.jmx.snmp.SnmpPduFactory factory)
This method is called when a call is received from the network.

param
model The model ID.
param
factory The pdu factory to use to encode and decode pdu.
return
The object that will handle every steps of the receiving (mainly unmarshalling and security).

public SnmpIncomingResponsegetIncomingResponse(int model, com.sun.jmx.snmp.SnmpPduFactory factory)
This method is called when a call is received from the network. The sub system routes the call to the dedicated model according to the model ID.

param
model The model ID.
param
factory The pdu factory to use to decode pdu.
return
The object that will handle every steps of the receiving (mainly marshalling and security).

public SnmpOutgoingRequestgetOutgoingRequest(int model, com.sun.jmx.snmp.SnmpPduFactory factory)
This method is called when a call is to be sent to the network. The sub system routes the call to the dedicated model according to the model ID.

param
model The model ID.
param
factory The pdu factory to use to encode and decode pdu.
return
The object that will handle every steps of the sending (mainly marshalling and security).

public com.sun.jmx.snmp.SnmpPdugetRequestPdu(int model, com.sun.jmx.snmp.SnmpParams p, int type)
This method is called to instantiate a pdu according to the passed pdu type and parameters. The sub system routes the call to the dedicated model according to the model ID.

param
model The model ID.
param
p The request parameters.
param
type The pdu type.
return
The pdu.

public SnmpSecuritySubSystemgetSecuritySubSystem()
Gets the attached security sub system.

return
The security sub system.

public voidsetSecuritySubSystem(SnmpSecuritySubSystem security)
Attaches the security sub system to this sub system. Message processing model are making usage of various security sub systems. This direct attachement avoid the need of accessing the engine to retrieve the Security sub system.

param
security The security sub system.