|
OpenNMS API 1.1.4 | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.opennms.protocols.snmp.SnmpPortal
Abstracts the communication related details from the SnmpSession and SnmpTrapSession.
SnmpSession,
SnmpTrapSession,
DatagramSocket| Nested Class Summary | |
private class |
SnmpPortal.Receiver
Defines the inner class that monitors the datagram socket and receives all the PDU responses. |
| Field Summary | |
private boolean |
bSocketSoTimeoutRequired
Set to true if it is necessary to set the socket timeout value via the Socket.setSoTimeout() method in order to keep from blocking indefinitely on a socket I/O call. |
private java.net.DatagramSocket |
m_comm
The datagram socket used to send and receive SNMP messages. |
private AsnEncoder |
m_encoder
ASN.1 encoder used to decode the SNMP messages. |
private SnmpPacketHandler |
m_handler
The packet handler that is used to process received SNMP packets and invalid datagrams. |
private boolean |
m_isClosing
When set the portal object's close method has been invoked. |
private java.lang.Thread |
m_recvThread
the receiver thread that runs the inner class Receiver. |
private static java.lang.String |
PROP_SOCKET_TIMEOUT_PERIOD
Identifies the system property that may be used to specify the number of milliseconds to use for the socket timeout. |
private static java.lang.String |
PROP_SOCKET_TIMEOUT_REQUIRED
Identifies the system property that may be used to specify whether or not a timeout value is set on the SNMP trap socket. |
| Constructor Summary | |
private |
SnmpPortal()
Private constructor used to disallow the default constructor. |
(package private) |
SnmpPortal(SnmpPacketHandler handler,
AsnEncoder encoder,
int port)
The SnmpPortal constructor. |
| Method Summary | |
(package private) void |
close()
Used to close the session. |
(package private) AsnEncoder |
getAsnEncoder()
Gets the AsnEncoder for the session. |
(package private) SnmpPacketHandler |
getPacketHandler()
Gets the default SnmpPacketHandler for the session. |
(package private) void |
handlePkt(java.net.DatagramPacket pkt)
Recovers a SnmpPduPacket or SnmpPduTrap from the passed datagram and calls the appropriate method in the handler. |
(package private) boolean |
isClosed()
Returns true if this portal has had it's close
method called. |
(package private) void |
send(SnmpPeer peer,
byte[] buf)
Transmits the passed buffer to the respective peer agent. |
(package private) void |
send(SnmpPeer peer,
byte[] buf,
int length)
Transmits the passed buffer to the respective peer agent. |
(package private) void |
setAsnEncoder(AsnEncoder encoder)
Sets the default encoder. |
(package private) void |
setPacketHandler(SnmpPacketHandler hdl)
Sets the default SnmpPacketHandler. |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
private SnmpPacketHandler m_handler
private java.net.DatagramSocket m_comm
private java.lang.Thread m_recvThread
private AsnEncoder m_encoder
private volatile boolean m_isClosing
private boolean bSocketSoTimeoutRequired
private static final java.lang.String PROP_SOCKET_TIMEOUT_REQUIRED
private static final java.lang.String PROP_SOCKET_TIMEOUT_PERIOD
| Constructor Detail |
private SnmpPortal()
throws java.lang.UnsupportedOperationException
java.lang.UnsupportedOperationException - Always thrown!
SnmpPortal(SnmpPacketHandler handler,
AsnEncoder encoder,
int port)
throws java.net.SocketException
handler - The SNMP packet handler.encoder - The ASN.1 codec object.port - The port to send and receive datagram from.
java.net.SocketException - Thrown if an error occurs setting
up the communication channel.
java.lang.IllegalArgumentException - Thrown if any of the parameters
are null or invalid.| Method Detail |
void handlePkt(java.net.DatagramPacket pkt)
throws SnmpPduEncodingException,
AsnDecodingException
pkt - The datagram packet to be decoded
SnmpPduEncodingException - Thrown if a pdu or session level error occurs
AsnDecodingException - Thrown if the AsnEncoder encounters an errorSnmpPduTrap,
SnmpPduPacket,
SnmpPduRequest,
SnmpPduBulk,
SnmpParameters,
AsnEncoder
void send(SnmpPeer peer,
byte[] buf,
int length)
throws java.io.IOException
peer - The SNMP peer destinationbuf - The buffer to transmit.length - The valid length of the buffer
java.lang.IOException - For more details see
java.net.DatagramSocket.
java.io.IOExceptionDatagramSocket
void send(SnmpPeer peer,
byte[] buf)
throws java.io.IOException
peer - The SNMP peer destinationbuf - The buffer to transmit.
java.lang.IOException - For more details see
java.net.DatagramSocket.
java.io.IOExceptionDatagramSocketvoid setPacketHandler(SnmpPacketHandler hdl)
hdl - The new handlerSnmpPacketHandler getPacketHandler()
void setAsnEncoder(AsnEncoder encoder)
encoder - The new encoderAsnEncoder getAsnEncoder()
boolean isClosed()
close
method called.
void close()
|
OpenNMS API 1.1.4 | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||