org.snmp4j.transport
Class DefaultSshTransportMapping

java.lang.Object
  extended by org.snmp4j.transport.AbstractTransportMapping<SshAddress>
      extended by org.snmp4j.transport.DefaultSshTransportMapping
All Implemented Interfaces:
TransportMapping<SshAddress>

public class DefaultSshTransportMapping
extends AbstractTransportMapping<SshAddress>

The DefaultSshTransportMapping implements a TCP transport mapping with TLS according to RFC 5592 (named SSHTM therein).

Since:
2.0
Version:
2.0
Author:
Frank Fock

Nested Class Summary
protected  class DefaultSshTransportMapping.SessionID
           
 
Field Summary
 
Fields inherited from class org.snmp4j.transport.AbstractTransportMapping
asyncMsgProcessingSupported, maxInboundMessageSize, transportListener
 
Constructor Summary
DefaultSshTransportMapping(SshTransportAdapter transportAdapter)
           
 
Method Summary
 void close()
          Closes the transport an releases all bound resources synchronously.
protected  void fireIncrementCounter(CounterEvent e)
           
 SshAddress getListenAddress()
          Returns the address that represents the incoming address this transport mapping uses to listen for incoming packets.
 java.lang.Class<? extends Address> getSupportedAddressClass()
          Gets the Address class that is supported by this transport mapping.
 boolean isListening()
          Returns true if the transport mapping is listening for incoming messages.
 void listen()
          Listen for incoming messages.
protected  SshSession openSession(SshAddress address, TransportStateReference tmStateReference, int maxMessageSize)
           
 void sendMessage(SshAddress address, byte[] message, TransportStateReference tmStateReference)
          Sends a message to the supplied address using this transport.
 
Methods inherited from class org.snmp4j.transport.AbstractTransportMapping
addTransportListener, fireProcessMessage, getMaxInboundMessageSize, isAsyncMsgProcessingSupported, removeTransportListener, setAsyncMsgProcessingSupported
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DefaultSshTransportMapping

public DefaultSshTransportMapping(SshTransportAdapter transportAdapter)
Method Detail

getSupportedAddressClass

public java.lang.Class<? extends Address> getSupportedAddressClass()
Description copied from interface: TransportMapping
Gets the Address class that is supported by this transport mapping.

Specified by:
getSupportedAddressClass in interface TransportMapping<SshAddress>
Specified by:
getSupportedAddressClass in class AbstractTransportMapping<SshAddress>
Returns:
a subclass of Address.

getListenAddress

public SshAddress getListenAddress()
Description copied from interface: TransportMapping
Returns the address that represents the 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(SshAddress address,
                        byte[] message,
                        TransportStateReference tmStateReference)
                 throws java.io.IOException
Description copied from interface: TransportMapping
Sends a message to the supplied address using this transport.

Specified by:
sendMessage in interface TransportMapping<SshAddress>
Specified by:
sendMessage in class AbstractTransportMapping<SshAddress>
Parameters:
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.
Throws:
java.io.IOException - if any underlying IO operation fails.

openSession

protected SshSession openSession(SshAddress address,
                                 TransportStateReference tmStateReference,
                                 int maxMessageSize)

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 interface TransportMapping<SshAddress>
Specified by:
close in class AbstractTransportMapping<SshAddress>
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 before TransportMapping.sendMessage(A, byte[], org.snmp4j.TransportStateReference) is called for the first time.

Specified by:
listen in interface TransportMapping<SshAddress>
Specified by:
listen in class AbstractTransportMapping<SshAddress>
Throws:
java.io.IOException - if an IO operation exception occurs while starting the listener.

isListening

public boolean isListening()
Description copied from interface: TransportMapping
Returns true 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.

Returns:
true if this transport mapping is listening for messages.

fireIncrementCounter

protected void fireIncrementCounter(CounterEvent e)

Copyright 2005-2011 Frank Fock (SNMP4J.org)

Copyright © 2011 SNMP4J.org. All Rights Reserved.