public abstract class TcpTransportMapping extends AbstractTransportMapping<TcpAddress> implements ConnectionOrientedTransportMapping<TcpAddress>
TcpTransportMapping is the abstract base class for
TCP transport mappings.| Modifier and Type | Field and Description |
|---|---|
protected TcpAddress |
tcpAddress |
asyncMsgProcessingSupported, maxInboundMessageSize, transportListener| Constructor and Description |
|---|
TcpTransportMapping(TcpAddress tcpAddress) |
| Modifier and Type | Method and Description |
|---|---|
void |
addTransportStateListener(TransportStateListener l)
Adds a transport state listener that is to be informed about connection
state changes.
|
abstract void |
close()
Closes the transport an releases all bound resources synchronously.
|
protected void |
fireConnectionStateChanged(TransportStateEvent change) |
TcpAddress |
getAddress()
Returns the transport address that is used by this transport mapping for
sending and receiving messages.
|
TcpAddress |
getListenAddress()
Returns the address that represents the actual incoming address this transport
mapping uses to listen for incoming packets.
|
abstract MessageLengthDecoder |
getMessageLengthDecoder()
Returns the
MessageLengthDecoder used by this transport
mapping. |
Class<? extends Address> |
getSupportedAddressClass()
Gets the
Address class that is supported by this transport mapping. |
abstract void |
listen()
Listen for incoming messages.
|
void |
removeTransportStateListener(TransportStateListener l)
Removes the supplied transport state listener.
|
abstract void |
sendMessage(TcpAddress address,
byte[] message,
TransportStateReference tmStateReference)
Sends a message to the supplied address using this transport.
|
abstract void |
setConnectionTimeout(long connectionTimeout)
Sets the connection timeout.
|
abstract void |
setMessageLengthDecoder(MessageLengthDecoder messageLengthDecoder)
Sets the
MessageLengthDecoder that decodes the total
message length from the header of a message. |
addTransportListener, fireProcessMessage, getMaxInboundMessageSize, isAsyncMsgProcessingSupported, removeTransportListener, setAsyncMsgProcessingSupportedclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitcloseaddTransportListener, getMaxInboundMessageSize, isListening, removeTransportListenerprotected TcpAddress tcpAddress
public TcpTransportMapping(TcpAddress tcpAddress)
public Class<? extends Address> getSupportedAddressClass()
TransportMappingAddress class that is supported by this transport mapping.getSupportedAddressClass in interface TransportMapping<TcpAddress>getSupportedAddressClass in class AbstractTransportMapping<TcpAddress>Address.public TcpAddress getAddress()
Address used by this transport mapping. The returned
instance must not be modified!public TcpAddress getListenAddress()
TransportMappinggetListenAddress in interface TransportMapping<TcpAddress>null this transport
mapping is not configured to listen for incoming packets.public abstract void sendMessage(TcpAddress address, byte[] message, TransportStateReference tmStateReference) throws IOException
TransportMappingsendMessage in interface TransportMapping<TcpAddress>sendMessage in class AbstractTransportMapping<TcpAddress>address - an Address 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.IOException - if any underlying IO operation fails.public abstract void listen()
throws IOException
TransportMappingTransportMapping.sendMessage(A, byte[], org.snmp4j.TransportStateReference) is called for the
first time.listen in interface TransportMapping<TcpAddress>listen in class AbstractTransportMapping<TcpAddress>IOException - if an IO operation exception occurs while starting the listener.public abstract void close()
throws IOException
TransportMappingclose in interface TransportMapping<TcpAddress>close in class AbstractTransportMapping<TcpAddress>IOException - if any IO operation for the close fails.public abstract MessageLengthDecoder getMessageLengthDecoder()
MessageLengthDecoder used by this transport
mapping.getMessageLengthDecoder in interface ConnectionOrientedTransportMapping<TcpAddress>public abstract void setMessageLengthDecoder(MessageLengthDecoder messageLengthDecoder)
MessageLengthDecoder that decodes the total
message length from the header of a message.setMessageLengthDecoder in interface ConnectionOrientedTransportMapping<TcpAddress>messageLengthDecoder - a MessageLengthDecoder instance.public abstract void setConnectionTimeout(long connectionTimeout)
setConnectionTimeout in interface ConnectionOrientedTransportMapping<TcpAddress>connectionTimeout - the idle timeout in milliseconds. A zero or negative value will disable
any timeout and connections opened by this transport mapping will stay
opened until they are explicitly closed.public void addTransportStateListener(TransportStateListener l)
ConnectionOrientedTransportMappingaddTransportStateListener in interface ConnectionOrientedTransportMapping<TcpAddress>l - a TransportStateListener.public void removeTransportStateListener(TransportStateListener l)
ConnectionOrientedTransportMappingremoveTransportStateListener in interface ConnectionOrientedTransportMapping<TcpAddress>l - a TransportStateListener.protected void fireConnectionStateChanged(TransportStateEvent change)
Copyright © 2016 SNMP4J.org. All Rights Reserved.