public final class SnmpTrapSession extends Object
The trap session is used to send and receives SNMPv1 & v2 trap messages. The messages are received on the configured port, or the default(162) port and then decoded using the set ASN.1 codec. When messages are sent they are encoded using the passed SnmpParameters object that is part of the SnmpPeer object.
A trap message handler must be bound to the session in order to send or receive messages.
SnmpTrapHandler
Modifier and Type | Field and Description |
---|---|
static int |
DEFAULT_PORT
This is the default port where traps should be sent and received as
defined by the RFC.
|
static int |
ERROR_EXCEPTION
Defines a error due to a thown exception.
|
static int |
ERROR_INVALID_PDU
Defines an error condition with an invalid PDU.
|
Constructor and Description |
---|
SnmpTrapSession(SnmpTrapHandler handler)
The default SnmpTrapSession constructor.
|
SnmpTrapSession(SnmpTrapHandler handler,
InetAddress address,
int snmpTrapPort) |
SnmpTrapSession(SnmpTrapHandler handler,
int port)
The default SnmpTrapSession constructor that takes a packet handler as
parameter.
|
Modifier and Type | Method and Description |
---|---|
void |
close()
Used to close the session.
|
AsnEncoder |
getAsnEncoder()
Gets the AsnEncoder for the session.
|
SnmpTrapHandler |
getHandler()
Returns the trap handler for this trap session.
|
boolean |
isClosed()
Returns true if the
close method has been called. |
void |
send(SnmpPeer peer,
SnmpPduPacket pdu)
Transmits the specified SnmpRequest to the SnmpPeer defined.
|
void |
send(SnmpPeer peer,
SnmpPduTrap trap)
Transmits the specified SnmpPduTrap to the SnmpPeer defined The
SnmpPduTrap is encoded using the peer AsnEncoder, as defined by the
SnmpParameters.
|
void |
setAsnEncoder(AsnEncoder encoder)
Sets the default encoder.
|
void |
setHandler(SnmpTrapHandler hdl)
Sets the trap handler for the session.
|
public static final int ERROR_EXCEPTION
Defines a error due to a thown exception. When the snmpTrapSessionError method is invoked in the trap handler, the exception object is passed as the ref parameter.
public static final int ERROR_INVALID_PDU
Defines an error condition with an invalid PDU. For the moment this is not actually used, but reserved for future use. When the session trap handler error method is invoke the pdu in error should be passed as the ref parameters
public static final int DEFAULT_PORT
public SnmpTrapSession(SnmpTrapHandler handler) throws SocketException
handler
- The handler associated for message processing.SocketException
- If thrown it is from the creation of a DatagramSocket.SecurityException
- Thrown if the security manager disallows the creation of
the handler.public SnmpTrapSession(SnmpTrapHandler handler, int port) throws SocketException
SocketException
- If thrown it is from the creation of a DatagramSocket.public SnmpTrapSession(SnmpTrapHandler handler, InetAddress address, int snmpTrapPort) throws SocketException
SocketException
public SnmpTrapHandler getHandler()
public void setHandler(SnmpTrapHandler hdl)
hdl
- The new packet handlerpublic void setAsnEncoder(AsnEncoder encoder)
encoder
- The new encoderpublic AsnEncoder getAsnEncoder()
public boolean isClosed()
close
method has been called. The
session cannot be used to send request after close
has
been executed.public void close()
IllegalStateException
- Thrown if the session was already closed.public void send(SnmpPeer peer, SnmpPduTrap trap) throws SnmpPduEncodingException, AsnEncodingException, IOException
peer
- The remote peer to send to.trap
- The SnmpPduTrap to transmitSnmpPduEncodingException
- Thrown if an encoding exception occurs at the session
levelAsnEncodingException
- Thrown if an encoding exception occurs in the AsnEncoder
object.IOException
- Thrown if an error occurs sending the encoded datagramIllegalStateException
- Thrown if the session has been closed.SnmpRequest
,
SnmpParameters
,
SnmpPeer
public void send(SnmpPeer peer, SnmpPduPacket pdu) throws SnmpPduEncodingException, AsnEncodingException, IOException
peer
- The remote peer to send to.pdu
- The pdu to transmitSnmpPduEncodingException
- Thrown if an encoding exception occurs at the session
levelAsnEncodingException
- Thrown if an encoding exception occurs in the AsnEncoder
object.IOException
- Thrown if an error occurs sending the encoded datagramIllegalStateException
- Thrown if the session has been closed.SnmpRequest
,
SnmpParameters
,
SnmpPeer
Copyright © 2021. All rights reserved.