org.apache.commons.net.ftp

## Class DelegateSocket

- java.lang.Object
- - java.net.Socket
  - - org.apache.commons.net.ftp.DelegateSocket

- All Implemented Interfaces:
    Closeable, AutoCloseable
  Direct Known Subclasses:
    DeflateSocket

      abstract class DelegateSocket
      extends Socket

  Wrapper class for FTP data channel sockets.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected Socket` | `delegate`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `DelegateSocket(Socket delegate)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `bind(SocketAddress bindpoint)`
    `void` | `close()`
    `void` | `connect(SocketAddress endpoint)`
    `void` | `connect(SocketAddress endpoint, int timeout)`
    `SocketChannel` | `getChannel()`
    `InetAddress` | `getInetAddress()`
    `InputStream` | `getInputStream()`
    `boolean` | `getKeepAlive()`
    `InetAddress` | `getLocalAddress()`
    `int` | `getLocalPort()`
    `SocketAddress` | `getLocalSocketAddress()`
    `boolean` | `getOOBInline()`
    `OutputStream` | `getOutputStream()`
    `int` | `getPort()`
    `int` | `getReceiveBufferSize()`
    `SocketAddress` | `getRemoteSocketAddress()`
    `boolean` | `getReuseAddress()`
    `int` | `getSendBufferSize()`
    `int` | `getSoLinger()`
    `int` | `getSoTimeout()`
    `boolean` | `getTcpNoDelay()`
    `int` | `getTrafficClass()`
    `boolean` | `isBound()`
    `boolean` | `isClosed()`
    `boolean` | `isConnected()`
    `boolean` | `isInputShutdown()`
    `boolean` | `isOutputShutdown()`
    `void` | `sendUrgentData(int data)`
    `void` | `setKeepAlive(boolean on)`
    `void` | `setOOBInline(boolean on)`
    `void` | `setPerformancePreferences(int connectionTime, int latency, int bandwidth)`
    `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` | `shutdownInput()`
    `void` | `shutdownOutput()`
    `String` | `toString()`

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

      `setSocketImplFactory`

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

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

- - ### Field Detail

    - #### delegate

          protected final Socket delegate

  - ### Constructor Detail

    - #### DelegateSocket

          DelegateSocket(Socket delegate)

  - ### Method Detail

    - #### bind

          public void bind(SocketAddress bindpoint)
                    throws IOException

      Overrides:
        `bind` in class `Socket`
      Throws:
        `IOException`

    - #### close

          public void close()
                     throws IOException

      Specified by:
        `close` in interface `Closeable`
      Specified by:
        `close` in interface `AutoCloseable`
      Overrides:
        `close` in class `Socket`
      Throws:
        `IOException`

    - #### connect

          public void connect(SocketAddress endpoint)
                       throws IOException

      Overrides:
        `connect` in class `Socket`
      Throws:
        `IOException`

    - #### connect

          public void connect(SocketAddress endpoint,
                              int timeout)
                       throws IOException

      Overrides:
        `connect` in class `Socket`
      Throws:
        `IOException`

    - #### getChannel

          public SocketChannel getChannel()

      Overrides:
        `getChannel` in class `Socket`

    - #### getInetAddress

          public InetAddress getInetAddress()

      Overrides:
        `getInetAddress` in class `Socket`

    - #### getInputStream

          public InputStream getInputStream()
                                     throws IOException

      Overrides:
        `getInputStream` in class `Socket`
      Throws:
        `IOException`

    - #### getKeepAlive

          public boolean getKeepAlive()
                               throws SocketException

      Overrides:
        `getKeepAlive` in class `Socket`
      Throws:
        `SocketException`

    - #### getLocalAddress

          public InetAddress getLocalAddress()

      Overrides:
        `getLocalAddress` in class `Socket`

    - #### getLocalPort

          public int getLocalPort()

      Overrides:
        `getLocalPort` in class `Socket`

    - #### getLocalSocketAddress

          public SocketAddress getLocalSocketAddress()

      Overrides:
        `getLocalSocketAddress` in class `Socket`

    - #### getOOBInline

          public boolean getOOBInline()
                               throws SocketException

      Overrides:
        `getOOBInline` in class `Socket`
      Throws:
        `SocketException`

    - #### getOutputStream

          public OutputStream getOutputStream()
                                       throws IOException

      Overrides:
        `getOutputStream` in class `Socket`
      Throws:
        `IOException`

    - #### getPort

          public int getPort()

      Overrides:
        `getPort` in class `Socket`

    - #### getReceiveBufferSize

          public int getReceiveBufferSize()
                                   throws SocketException

      Overrides:
        `getReceiveBufferSize` in class `Socket`
      Throws:
        `SocketException`

    - #### getRemoteSocketAddress

          public SocketAddress getRemoteSocketAddress()

      Overrides:
        `getRemoteSocketAddress` in class `Socket`

    - #### getReuseAddress

          public boolean getReuseAddress()
                                  throws SocketException

      Overrides:
        `getReuseAddress` in class `Socket`
      Throws:
        `SocketException`

    - #### getSendBufferSize

          public int getSendBufferSize()
                                throws SocketException

      Overrides:
        `getSendBufferSize` in class `Socket`
      Throws:
        `SocketException`

    - #### getSoLinger

          public int getSoLinger()
                          throws SocketException

      Overrides:
        `getSoLinger` in class `Socket`
      Throws:
        `SocketException`

    - #### getSoTimeout

          public int getSoTimeout()
                           throws SocketException

      Overrides:
        `getSoTimeout` in class `Socket`
      Throws:
        `SocketException`

    - #### getTcpNoDelay

          public boolean getTcpNoDelay()
                                throws SocketException

      Overrides:
        `getTcpNoDelay` in class `Socket`
      Throws:
        `SocketException`

    - #### getTrafficClass

          public int getTrafficClass()
                              throws SocketException

      Overrides:
        `getTrafficClass` in class `Socket`
      Throws:
        `SocketException`

    - #### isBound

          public boolean isBound()

      Overrides:
        `isBound` in class `Socket`

    - #### isClosed

          public boolean isClosed()

      Overrides:
        `isClosed` in class `Socket`

    - #### isConnected

          public boolean isConnected()

      Overrides:
        `isConnected` in class `Socket`

    - #### isInputShutdown

          public boolean isInputShutdown()

      Overrides:
        `isInputShutdown` in class `Socket`

    - #### isOutputShutdown

          public boolean isOutputShutdown()

      Overrides:
        `isOutputShutdown` in class `Socket`

    - #### sendUrgentData

          public void sendUrgentData(int data)
                              throws IOException

      Overrides:
        `sendUrgentData` in class `Socket`
      Throws:
        `IOException`

    - #### setKeepAlive

          public void setKeepAlive(boolean on)
                            throws SocketException

      Overrides:
        `setKeepAlive` in class `Socket`
      Throws:
        `SocketException`

    - #### setOOBInline

          public void setOOBInline(boolean on)
                            throws SocketException

      Overrides:
        `setOOBInline` in class `Socket`
      Throws:
        `SocketException`

    - #### setPerformancePreferences

          public void setPerformancePreferences(int connectionTime,
                                                int latency,
                                                int bandwidth)

      Overrides:
        `setPerformancePreferences` in class `Socket`

    - #### setReceiveBufferSize

          public void setReceiveBufferSize(int size)
                                    throws SocketException

      Overrides:
        `setReceiveBufferSize` in class `Socket`
      Throws:
        `SocketException`

    - #### setReuseAddress

          public void setReuseAddress(boolean on)
                               throws SocketException

      Overrides:
        `setReuseAddress` in class `Socket`
      Throws:
        `SocketException`

    - #### setSendBufferSize

          public void setSendBufferSize(int size)
                                 throws SocketException

      Overrides:
        `setSendBufferSize` in class `Socket`
      Throws:
        `SocketException`

    - #### setSoLinger

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

      Overrides:
        `setSoLinger` in class `Socket`
      Throws:
        `SocketException`

    - #### setSoTimeout

          public void setSoTimeout(int timeout)
                            throws SocketException

      Overrides:
        `setSoTimeout` in class `Socket`
      Throws:
        `SocketException`

    - #### setTcpNoDelay

          public void setTcpNoDelay(boolean on)
                             throws SocketException

      Overrides:
        `setTcpNoDelay` in class `Socket`
      Throws:
        `SocketException`

    - #### setTrafficClass

          public void setTrafficClass(int tc)
                               throws SocketException

      Overrides:
        `setTrafficClass` in class `Socket`
      Throws:
        `SocketException`

    - #### shutdownInput

          public void shutdownInput()
                             throws IOException

      Overrides:
        `shutdownInput` in class `Socket`
      Throws:
        `IOException`

    - #### shutdownOutput

          public void shutdownOutput()
                              throws IOException

      Overrides:
        `shutdownOutput` in class `Socket`
      Throws:
        `IOException`

    - #### toString

          public String toString()

      Overrides:
        `toString` in class `Socket`