- java.lang.Object
-
- org.snmp4j.transport.AbstractTransportMapping<A>
-
- org.snmp4j.transport.DummyTransport.DummyTransportResponder
-
- All Implemented Interfaces:
java.io.Closeable
,java.lang.AutoCloseable
,TransportMapping<A>
- Enclosing class:
- DummyTransport<A extends IpAddress>
public class DummyTransport.DummyTransportResponder extends AbstractTransportMapping<A>
-
-
Field Summary
Fields Modifier and Type Field Description private boolean
listening
private WorkerTask
listenThread
-
Fields inherited from class org.snmp4j.transport.AbstractTransportMapping
asyncMsgProcessingSupported, listenWorkerTask, maxInboundMessageSize, suspendedAddresses, transportListener
-
-
Constructor Summary
Constructors Constructor Description DummyTransportResponder()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
close()
Closes the transport an releases all bound resources synchronously.A
getListenAddress()
Returns the address that represents the actual incoming address this transport mapping uses to listen for incoming packets.protected WorkerTask
getListenerWorkerTask()
Gets theWorkerTask
that is responsible for receiving new messages.java.lang.Class<? extends Address>
getSupportedAddressClass()
Gets the primaryAddress
class that is supported by this transport mapping.boolean
isListening()
Returnstrue
if the transport mapping is listening for incoming messages.void
listen()
Listen for incoming messages.void
sendMessage(A address, byte[] message, TransportStateReference tmStateReference, long timeoutMillis, int retries)
Sends a message to the supplied address using this transport.-
Methods inherited from class org.snmp4j.transport.AbstractTransportMapping
addTransportListener, fireProcessMessage, getMaxInboundMessageSize, getPriority, getThreadName, handleDroppedMessageToSend, isAsyncMsgProcessingSupported, removeAllTransportListeners, removeTransportListener, resumeAddress, setAsyncMsgProcessingSupported, setPriority, setThreadName, suspendAddress
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.snmp4j.TransportMapping
getSupportedAddressClasses, getSupportedTransportType, isAddressSupported, isAddressSupported
-
-
-
-
Field Detail
-
listening
private boolean listening
-
listenThread
private WorkerTask listenThread
-
-
Method Detail
-
getSupportedAddressClass
public java.lang.Class<? extends Address> getSupportedAddressClass()
Description copied from interface:TransportMapping
Gets the primaryAddress
class that is supported by this transport mapping.- Specified by:
getSupportedAddressClass
in interfaceTransportMapping<A extends IpAddress>
- Specified by:
getSupportedAddressClass
in classAbstractTransportMapping<A extends IpAddress>
- Returns:
- a subclass of
Address
.
-
getListenAddress
public A getListenAddress()
Description copied from interface:TransportMapping
Returns the address that represents the actual incoming address this transport mapping uses to listen for incoming packets.- Returns:
- the address for incoming packets or
null
this transport mapping is not configured to listen for incoming packets.
-
sendMessage
public void sendMessage(A address, byte[] message, TransportStateReference tmStateReference, long timeoutMillis, int retries) throws java.io.IOException
Description copied from class:AbstractTransportMapping
Sends a message to the supplied address using this transport. If the target address has been suspended, then instead actually sending the message on the wire, the methodAbstractTransportMapping.handleDroppedMessageToSend(Address, byte[], TransportStateReference, long, int)
will be called. To stop suspending of a target address, callAbstractTransportMapping.resumeAddress(Address)
for that address.- Specified by:
sendMessage
in interfaceTransportMapping<A extends IpAddress>
- Specified by:
sendMessage
in classAbstractTransportMapping<A extends IpAddress>
- Parameters:
address
- anAddress
instance denoting the target address.message
- the whole message as an array of bytes.tmStateReference
- the (optional) transport model state reference as defined by RFC 5590 section 6.1.timeoutMillis
- maximum number of milli seconds the connection creation might take (if connection based).retries
- maximum retries during connection creation.- Throws:
java.io.IOException
- if any underlying IO operation fails.
-
close
public void close() throws java.io.IOException
Description copied from interface:TransportMapping
Closes the transport an releases all bound resources synchronously.- Specified by:
close
in interfacejava.lang.AutoCloseable
- Specified by:
close
in interfacejava.io.Closeable
- Specified by:
close
in interfaceTransportMapping<A extends IpAddress>
- Specified by:
close
in classAbstractTransportMapping<A extends IpAddress>
- Throws:
java.io.IOException
- if any IO operation for the close fails.
-
listen
public void listen() throws java.io.IOException
Description copied from interface:TransportMapping
Listen for incoming messages. For connection oriented transports, this method needs to be called beforeTransportMapping.sendMessage(A, byte[], org.snmp4j.TransportStateReference, long, int)
is called for the first time.- Specified by:
listen
in interfaceTransportMapping<A extends IpAddress>
- Specified by:
listen
in classAbstractTransportMapping<A extends IpAddress>
- Throws:
java.io.IOException
- if an IO operation exception occurs while starting the listener.
-
getListenerWorkerTask
protected WorkerTask getListenerWorkerTask()
Description copied from class:AbstractTransportMapping
Gets theWorkerTask
that is responsible for receiving new messages.- Specified by:
getListenerWorkerTask
in classAbstractTransportMapping<A extends IpAddress>
- Returns:
- a
WorkerTask
instance which is most likely aDefaultThreadFactory.WorkerThread
.
-
isListening
public boolean isListening()
Description copied from interface:TransportMapping
Returnstrue
if the transport mapping is listening for incoming messages. For connection oriented transport mappings this is a prerequisite to be able to send SNMP messages. For connectionless transport mappings it is a prerequisite to be able to receive responses.- Specified by:
isListening
in interfaceTransportMapping<A extends IpAddress>
- Overrides:
isListening
in classAbstractTransportMapping<A extends IpAddress>
- Returns:
true
if this transport mapping is listening for messages.
-
-