org.apache.jmeter.util

## Class SlowSSLSocket

- java.lang.Object
- - java.net.Socket
  - - javax.net.ssl.SSLSocket
    - - org.apache.jmeter.util.SlowSSLSocket

- All Implemented Interfaces:
    java.io.Closeable, java.lang.AutoCloseable

      public class SlowSSLSocket
      extends javax.net.ssl.SSLSocket

  "Slow" SSLsocket implementation to emulate dial-up modems etc WARNING: the class relies on overriding all superclass methods in order to apply them to the input socket. Any missing methods will access the superclass socket, which will probably be in the wrong state.

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `SlowSSLSocket(javax.net.ssl.SSLSocket sock, int cps)` Wrap an SSLSocket with slow input and output streams

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addHandshakeCompletedListener(javax.net.ssl.HandshakeCompletedListener arg0)`
    `void` | `bind(java.net.SocketAddress bindpoint)`
    `void` | `close()`
    `void` | `connect(java.net.SocketAddress endpoint)`
    `void` | `connect(java.net.SocketAddress endpoint, int timeout)`
    `java.nio.channels.SocketChannel` | `getChannel()`
    `java.lang.String[]` | `getEnabledCipherSuites()`
    `java.lang.String[]` | `getEnabledProtocols()`
    `boolean` | `getEnableSessionCreation()`
    `java.net.InetAddress` | `getInetAddress()`
    `java.io.InputStream` | `getInputStream()`
    `boolean` | `getKeepAlive()`
    `java.net.InetAddress` | `getLocalAddress()`
    `int` | `getLocalPort()`
    `java.net.SocketAddress` | `getLocalSocketAddress()`
    `boolean` | `getNeedClientAuth()`
    `boolean` | `getOOBInline()`
    `java.io.OutputStream` | `getOutputStream()`
    `int` | `getPort()`
    `int` | `getReceiveBufferSize()`
    `java.net.SocketAddress` | `getRemoteSocketAddress()`
    `boolean` | `getReuseAddress()`
    `int` | `getSendBufferSize()`
    `javax.net.ssl.SSLSession` | `getSession()`
    `int` | `getSoLinger()`
    `int` | `getSoTimeout()`
    `java.lang.String[]` | `getSupportedCipherSuites()`
    `java.lang.String[]` | `getSupportedProtocols()`
    `boolean` | `getTcpNoDelay()`
    `int` | `getTrafficClass()`
    `boolean` | `getUseClientMode()`
    `boolean` | `getWantClientAuth()`
    `boolean` | `isBound()`
    `boolean` | `isClosed()`
    `boolean` | `isConnected()`
    `boolean` | `isInputShutdown()`
    `boolean` | `isOutputShutdown()`
    `void` | `removeHandshakeCompletedListener(javax.net.ssl.HandshakeCompletedListener arg0)`
    `void` | `sendUrgentData(int data)`
    `void` | `setEnabledCipherSuites(java.lang.String[] arg0)`
    `void` | `setEnabledProtocols(java.lang.String[] arg0)`
    `void` | `setEnableSessionCreation(boolean arg0)`
    `void` | `setKeepAlive(boolean on)`
    `void` | `setNeedClientAuth(boolean arg0)`
    `void` | `setOOBInline(boolean on)`
    `void` | `setReceiveBufferSize(int size)`
    `void` | `setReuseAddress(boolean on)`
    `void` | `setSendBufferSize(int size)`
    `void` | `setSoLinger(boolean on, int linger)`
    `void` | `setSoTimeout(int timeout)`
    `void` | `setTcpNoDelay(boolean on)`
    `void` | `setTrafficClass(int tc)`
    `void` | `setUseClientMode(boolean arg0)`
    `void` | `setWantClientAuth(boolean arg0)`
    `void` | `shutdownInput()`
    `void` | `shutdownOutput()`
    `void` | `startHandshake()`
    `java.lang.String` | `toString()`

    - ### Methods inherited from class javax.net.ssl.SSLSocket

      `getHandshakeSession, getSSLParameters, setSSLParameters`

    - ### Methods inherited from class java.net.Socket

      `setPerformancePreferences, setSocketImplFactory`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### SlowSSLSocket

          public SlowSSLSocket(javax.net.ssl.SSLSocket sock,
                               int cps)

      Wrap an SSLSocket with slow input and output streams
      Parameters:
        `sock` - SSLSocket to be wrapped
        `cps` - characters per second to emulate

  - ### Method Detail

    - #### getOutputStream

          public java.io.OutputStream getOutputStream()
                                               throws java.io.IOException

      Overrides:
        `getOutputStream` in class `java.net.Socket`
      Throws:
        `java.io.IOException`

    - #### getInputStream

          public java.io.InputStream getInputStream()
                                             throws java.io.IOException

      Overrides:
        `getInputStream` in class `java.net.Socket`
      Throws:
        `java.io.IOException`

    - #### addHandshakeCompletedListener

          public void addHandshakeCompletedListener(javax.net.ssl.HandshakeCompletedListener arg0)

      Specified by:
        `addHandshakeCompletedListener` in class `javax.net.ssl.SSLSocket`

    - #### getEnableSessionCreation

          public boolean getEnableSessionCreation()

      Specified by:
        `getEnableSessionCreation` in class `javax.net.ssl.SSLSocket`

    - #### getEnabledCipherSuites

          public java.lang.String[] getEnabledCipherSuites()

      Specified by:
        `getEnabledCipherSuites` in class `javax.net.ssl.SSLSocket`

    - #### getEnabledProtocols

          public java.lang.String[] getEnabledProtocols()

      Specified by:
        `getEnabledProtocols` in class `javax.net.ssl.SSLSocket`

    - #### getNeedClientAuth

          public boolean getNeedClientAuth()

      Specified by:
        `getNeedClientAuth` in class `javax.net.ssl.SSLSocket`

    - #### getSession

          public javax.net.ssl.SSLSession getSession()

      Specified by:
        `getSession` in class `javax.net.ssl.SSLSocket`

    - #### getSupportedCipherSuites

          public java.lang.String[] getSupportedCipherSuites()

      Specified by:
        `getSupportedCipherSuites` in class `javax.net.ssl.SSLSocket`

    - #### getSupportedProtocols

          public java.lang.String[] getSupportedProtocols()

      Specified by:
        `getSupportedProtocols` in class `javax.net.ssl.SSLSocket`

    - #### getUseClientMode

          public boolean getUseClientMode()

      Specified by:
        `getUseClientMode` in class `javax.net.ssl.SSLSocket`

    - #### getWantClientAuth

          public boolean getWantClientAuth()

      Specified by:
        `getWantClientAuth` in class `javax.net.ssl.SSLSocket`

    - #### removeHandshakeCompletedListener

          public void removeHandshakeCompletedListener(javax.net.ssl.HandshakeCompletedListener arg0)

      Specified by:
        `removeHandshakeCompletedListener` in class `javax.net.ssl.SSLSocket`

    - #### setEnableSessionCreation

          public void setEnableSessionCreation(boolean arg0)

      Specified by:
        `setEnableSessionCreation` in class `javax.net.ssl.SSLSocket`

    - #### setEnabledCipherSuites

          public void setEnabledCipherSuites(java.lang.String[] arg0)

      Specified by:
        `setEnabledCipherSuites` in class `javax.net.ssl.SSLSocket`

    - #### setEnabledProtocols

          public void setEnabledProtocols(java.lang.String[] arg0)

      Specified by:
        `setEnabledProtocols` in class `javax.net.ssl.SSLSocket`

    - #### setNeedClientAuth

          public void setNeedClientAuth(boolean arg0)

      Specified by:
        `setNeedClientAuth` in class `javax.net.ssl.SSLSocket`

    - #### setUseClientMode

          public void setUseClientMode(boolean arg0)

      Specified by:
        `setUseClientMode` in class `javax.net.ssl.SSLSocket`

    - #### setWantClientAuth

          public void setWantClientAuth(boolean arg0)

      Specified by:
        `setWantClientAuth` in class `javax.net.ssl.SSLSocket`

    - #### startHandshake

          public void startHandshake()
                              throws java.io.IOException

      Specified by:
        `startHandshake` in class `javax.net.ssl.SSLSocket`
      Throws:
        `java.io.IOException`

    - #### bind

          public void bind(java.net.SocketAddress bindpoint)
                    throws java.io.IOException

      Overrides:
        `bind` in class `java.net.Socket`
      Throws:
        `java.io.IOException`

    - #### close

          public void close()
                     throws java.io.IOException

      Specified by:
        `close` in interface `java.io.Closeable`
      Specified by:
        `close` in interface `java.lang.AutoCloseable`
      Overrides:
        `close` in class `java.net.Socket`
      Throws:
        `java.io.IOException`

    - #### connect

          public void connect(java.net.SocketAddress endpoint,
                              int timeout)
                       throws java.io.IOException

      Overrides:
        `connect` in class `java.net.Socket`
      Throws:
        `java.io.IOException`

    - #### connect

          public void connect(java.net.SocketAddress endpoint)
                       throws java.io.IOException

      Overrides:
        `connect` in class `java.net.Socket`
      Throws:
        `java.io.IOException`

    - #### getChannel

          public java.nio.channels.SocketChannel getChannel()

      Overrides:
        `getChannel` in class `java.net.Socket`

    - #### getInetAddress

          public java.net.InetAddress getInetAddress()

      Overrides:
        `getInetAddress` in class `java.net.Socket`

    - #### getKeepAlive

          public boolean getKeepAlive()
                               throws java.net.SocketException

      Overrides:
        `getKeepAlive` in class `java.net.Socket`
      Throws:
        `java.net.SocketException`

    - #### getLocalAddress

          public java.net.InetAddress getLocalAddress()

      Overrides:
        `getLocalAddress` in class `java.net.Socket`

    - #### getLocalPort

          public int getLocalPort()

      Overrides:
        `getLocalPort` in class `java.net.Socket`

    - #### getLocalSocketAddress

          public java.net.SocketAddress getLocalSocketAddress()

      Overrides:
        `getLocalSocketAddress` in class `java.net.Socket`

    - #### getOOBInline

          public boolean getOOBInline()
                               throws java.net.SocketException

      Overrides:
        `getOOBInline` in class `java.net.Socket`
      Throws:
        `java.net.SocketException`

    - #### getPort

          public int getPort()

      Overrides:
        `getPort` in class `java.net.Socket`

    - #### getReceiveBufferSize

          public int getReceiveBufferSize()
                                   throws java.net.SocketException

      Overrides:
        `getReceiveBufferSize` in class `java.net.Socket`
      Throws:
        `java.net.SocketException`

    - #### getRemoteSocketAddress

          public java.net.SocketAddress getRemoteSocketAddress()

      Overrides:
        `getRemoteSocketAddress` in class `java.net.Socket`

    - #### getReuseAddress

          public boolean getReuseAddress()
                                  throws java.net.SocketException

      Overrides:
        `getReuseAddress` in class `java.net.Socket`
      Throws:
        `java.net.SocketException`

    - #### getSendBufferSize

          public int getSendBufferSize()
                                throws java.net.SocketException

      Overrides:
        `getSendBufferSize` in class `java.net.Socket`
      Throws:
        `java.net.SocketException`

    - #### getSoLinger

          public int getSoLinger()
                          throws java.net.SocketException

      Overrides:
        `getSoLinger` in class `java.net.Socket`
      Throws:
        `java.net.SocketException`

    - #### getSoTimeout

          public int getSoTimeout()
                           throws java.net.SocketException

      Overrides:
        `getSoTimeout` in class `java.net.Socket`
      Throws:
        `java.net.SocketException`

    - #### getTcpNoDelay

          public boolean getTcpNoDelay()
                                throws java.net.SocketException

      Overrides:
        `getTcpNoDelay` in class `java.net.Socket`
      Throws:
        `java.net.SocketException`

    - #### getTrafficClass

          public int getTrafficClass()
                              throws java.net.SocketException

      Overrides:
        `getTrafficClass` in class `java.net.Socket`
      Throws:
        `java.net.SocketException`

    - #### isBound

          public boolean isBound()

      Overrides:
        `isBound` in class `java.net.Socket`

    - #### isClosed

          public boolean isClosed()

      Overrides:
        `isClosed` in class `java.net.Socket`

    - #### isConnected

          public boolean isConnected()

      Overrides:
        `isConnected` in class `java.net.Socket`

    - #### isInputShutdown

          public boolean isInputShutdown()

      Overrides:
        `isInputShutdown` in class `java.net.Socket`

    - #### isOutputShutdown

          public boolean isOutputShutdown()

      Overrides:
        `isOutputShutdown` in class `java.net.Socket`

    - #### sendUrgentData

          public void sendUrgentData(int data)
                              throws java.io.IOException

      Overrides:
        `sendUrgentData` in class `java.net.Socket`
      Throws:
        `java.io.IOException`

    - #### setKeepAlive

          public void setKeepAlive(boolean on)
                            throws java.net.SocketException

      Overrides:
        `setKeepAlive` in class `java.net.Socket`
      Throws:
        `java.net.SocketException`

    - #### setOOBInline

          public void setOOBInline(boolean on)
                            throws java.net.SocketException

      Overrides:
        `setOOBInline` in class `java.net.Socket`
      Throws:
        `java.net.SocketException`

    - #### setReceiveBufferSize

          public void setReceiveBufferSize(int size)
                                    throws java.net.SocketException

      Overrides:
        `setReceiveBufferSize` in class `java.net.Socket`
      Throws:
        `java.net.SocketException`

    - #### setReuseAddress

          public void setReuseAddress(boolean on)
                               throws java.net.SocketException

      Overrides:
        `setReuseAddress` in class `java.net.Socket`
      Throws:
        `java.net.SocketException`

    - #### setSendBufferSize

          public void setSendBufferSize(int size)
                                 throws java.net.SocketException

      Overrides:
        `setSendBufferSize` in class `java.net.Socket`
      Throws:
        `java.net.SocketException`

    - #### setSoLinger

          public void setSoLinger(boolean on,
                                  int linger)
                           throws java.net.SocketException

      Overrides:
        `setSoLinger` in class `java.net.Socket`
      Throws:
        `java.net.SocketException`

    - #### setSoTimeout

          public void setSoTimeout(int timeout)
                            throws java.net.SocketException

      Overrides:
        `setSoTimeout` in class `java.net.Socket`
      Throws:
        `java.net.SocketException`

    - #### setTcpNoDelay

          public void setTcpNoDelay(boolean on)
                             throws java.net.SocketException

      Overrides:
        `setTcpNoDelay` in class `java.net.Socket`
      Throws:
        `java.net.SocketException`

    - #### setTrafficClass

          public void setTrafficClass(int tc)
                               throws java.net.SocketException

      Overrides:
        `setTrafficClass` in class `java.net.Socket`
      Throws:
        `java.net.SocketException`

    - #### shutdownInput

          public void shutdownInput()
                             throws java.io.IOException

      Overrides:
        `shutdownInput` in class `java.net.Socket`
      Throws:
        `java.io.IOException`

    - #### shutdownOutput

          public void shutdownOutput()
                              throws java.io.IOException

      Overrides:
        `shutdownOutput` in class `java.net.Socket`
      Throws:
        `java.io.IOException`

    - #### toString

          public java.lang.String toString()

      Overrides:
        `toString` in class `java.net.Socket`

Copyright © 1998-2018 Apache Software Foundation. All Rights Reserved.