## net.i2p.client.streaming
Class I2PServerSocketImpl

    java.lang.Object
      net.i2p.client.streaming.I2PServerSocketImpl

All Implemented Interfaces:
  I2PServerSocket

Deprecated. use I2PServerSocketFull

     class I2PServerSocketImpl

extends Object
implements I2PServerSocket

Server socket implementation, allowing multiple threads to accept I2PSockets and pull from a queue populated by various threads (each of whom have their own timeout)

Constructor Summary
`I2PServerSocketImpl(I2PSocketManager mgr)` Deprecated.

Method Summary
`I2PSocket` `accept()` Deprecated. Waits for the next socket connecting.
`boolean` `addWaitForAccept(I2PSocket s, long timeoutMs)` Deprecated. Make the socket available and wait until the client app accepts it, or until the given timeout elapses.
`void` `close()` Deprecated. Closes the socket.
`I2PSocketManager` `getManager()` Deprecated. Access the manager which is coordinating the server socket
`long` `getSoTimeout()` Deprecated. Get Sock Option accept timeout stub, does nothing in ministreaming
`void` `setSoTimeout(long x)` Deprecated. Set Sock Option accept timeout stub, does nothing in ministreaming

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### I2PServerSocketImpl

    public I2PServerSocketImpl(I2PSocketManager mgr)

  Deprecated.

Method Detail

### setSoTimeout

    public void setSoTimeout(long x)

  Deprecated.
  Set Sock Option accept timeout stub, does nothing in ministreaming

  Specified by:
    `setSoTimeout` in interface `I2PServerSocket`
  Parameters:
    `x` -

### getSoTimeout

    public long getSoTimeout()

  Deprecated.
  Get Sock Option accept timeout stub, does nothing in ministreaming

  Specified by:
    `getSoTimeout` in interface `I2PServerSocket`
  Returns:
    timeout

### accept

    public I2PSocket accept()
                     throws I2PException,
                            ConnectException

  Deprecated.
  Waits for the next socket connecting. If a remote user tried to make a connection and the local application wasn't .accept()ing new connections, they should get refused (if .accept() doesnt occur in some small period - currently 5 seconds)

  Specified by:
    `accept` in interface `I2PServerSocket`
  Returns:
    a connected I2PSocket
  Throws:
    `I2PException` - if there is a problem with reading a new socket from the data available (aka the I2PSession closed, etc)
    `ConnectException` - if the I2PServerSocket is closed

### addWaitForAccept

    public boolean addWaitForAccept(I2PSocket s,
                                    long timeoutMs)

  Deprecated.
  Make the socket available and wait until the client app accepts it, or until the given timeout elapses. This doesn't have any limits on the queue size - perhaps it should add some choking (e.g. after 5 waiting for accept, refuse)

  Parameters:
    `timeoutMs` - how long to wait until accept
  Returns:
    true if the socket was accepted, false if the timeout expired or the socket was closed

### close

    public void close()

  Deprecated.
  Description copied from interface: `I2PServerSocket`
  Closes the socket.

  Specified by:
    `close` in interface `I2PServerSocket`

### getManager

    public I2PSocketManager getManager()

  Deprecated.
  Description copied from interface: `I2PServerSocket`
  Access the manager which is coordinating the server socket

  Specified by:
    `getManager` in interface `I2PServerSocket`
  Returns:
    I2PSocketManager