|
OpenNMS API 1.2.3 | |||||||||
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.IOException
DatagramSocket
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.IOException
DatagramSocket
void 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.2.3 | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |