java.lang.Object
org.snmp4j.transport.AbstractTransportMapping<A>
org.snmp4j.transport.DummyTransport<A>
- All Implemented Interfaces:
Closeable,AutoCloseable,TransportMapping<A>
The
DummyTransport is a test TransportMapping for Command Generators
which actually does not sent messages over the network. Instead it provides the message
transparently as incoming message over the DummyTransport<A extends IpAddress>.DummyTransportResponder on a virtual
listen address, regardless to which outbound address the message was sent. The messages
are returned even if the listenAddress is left null.- Since:
- 2.0
- Author:
- Frank Fock
-
Nested Class Summary
Nested Classes -
Field Summary
Fields inherited from class org.snmp4j.transport.AbstractTransportMapping
asyncMsgProcessingSupported, connectionTimeout, listenWorkerTask, maxInboundMessageSize, socketCleaner, suspendedAddresses, transportListener, transportStateListeners -
Constructor Summary
ConstructorsConstructorDescriptionDummyTransport(A senderAddress) DummyTransport(A senderAddress, A receiverAddress) -
Method Summary
Modifier and TypeMethodDescriptionvoidclose()Closes the transport an releases all bound resources synchronously.Returns the address that represents the actual incoming address this transport mapping uses to listen for incoming packets.Gets theWorkerTaskthat is responsible for receiving new messages.getResponder(A receiverAddress) Gets the primaryAddressclass that is supported by this transport mapping.booleanReturnstrueif the transport mapping is listening for incoming messages.voidlisten()Listen for incoming messages.voidsendMessage(A address, byte[] message, TransportStateReference tmStateReference, long timeoutMillis, int retries) Sends a message to the supplied address using this transport.voidsetListenAddress(A listenAddress) toString()Methods inherited from class org.snmp4j.transport.AbstractTransportMapping
addTransportListener, addTransportStateListener, fireConnectionStateChanged, fireProcessMessage, getMaxInboundMessageSize, getPriority, getSocketCleaner, getSuspendedAddresses, getThreadName, handleDroppedMessageToSend, isAsyncMsgProcessingSupported, removeAllTransportListeners, removeTransportListener, removeTransportStateListener, resumeAddress, setAsyncMsgProcessingSupported, setPriority, setThreadName, suspendAddressMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface org.snmp4j.TransportMapping
getMaxOutboundMessageSize, getSupportedAddressClasses, getSupportedTransportType, isAddressSupported, isAddressSupported
-
Constructor Details
-
DummyTransport
public DummyTransport() -
DummyTransport
-
DummyTransport
-
-
Method Details
-
getSupportedAddressClass
Description copied from interface:TransportMappingGets the primaryAddressclass that is supported by this transport mapping.- Specified by:
getSupportedAddressClassin interfaceTransportMapping<A extends IpAddress>- Specified by:
getSupportedAddressClassin classAbstractTransportMapping<A extends IpAddress>- Returns:
- a subclass of
Address.
-
getListenAddress
Description copied from interface:TransportMappingReturns the address that represents the actual incoming address this transport mapping uses to listen for incoming packets.- Specified by:
getListenAddressin interfaceTransportMapping<A extends IpAddress>- Specified by:
getListenAddressin classAbstractTransportMapping<A extends IpAddress>- Returns:
- the address for incoming packets or
nullthis transport mapping is not configured to listen for incoming packets.
-
setListenAddress
-
sendMessage
public void sendMessage(A address, byte[] message, TransportStateReference tmStateReference, long timeoutMillis, int retries) throws IOException Description copied from class:AbstractTransportMappingSends 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:
sendMessagein interfaceTransportMapping<A extends IpAddress>- Specified by:
sendMessagein classAbstractTransportMapping<A extends IpAddress>- Parameters:
address- anAddressinstance 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 milliseconds the connection creation might take (if connection based).retries- maximum retries during connection creation.- Throws:
IOException- if any underlying IO operation fails.
-
close
Description copied from interface:TransportMappingCloses the transport an releases all bound resources synchronously.- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Specified by:
closein interfaceTransportMapping<A extends IpAddress>- Specified by:
closein classAbstractTransportMapping<A extends IpAddress>- Throws:
IOException- if any IO operation for the close fails.
-
listen
Description copied from interface:TransportMappingListen 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:
listenin interfaceTransportMapping<A extends IpAddress>- Specified by:
listenin classAbstractTransportMapping<A extends IpAddress>- Throws:
IOException- if an IO operation exception occurs while starting the listener.
-
isListening
public boolean isListening()Description copied from interface:TransportMappingReturnstrueif 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:
isListeningin interfaceTransportMapping<A extends IpAddress>- Overrides:
isListeningin classAbstractTransportMapping<A extends IpAddress>- Returns:
trueif this transport mapping is listening for messages.
-
getResponder
-
toString
-
getListenWorkerTask
Description copied from class:AbstractTransportMappingGets theWorkerTaskthat is responsible for receiving new messages.- Overrides:
getListenWorkerTaskin classAbstractTransportMapping<A extends IpAddress>- Returns:
- a
WorkerTaskinstance which is most likely aDefaultThreadFactory.WorkerThread.
-