# Uses of Package
net.i2p.client.streaming

- Packages that use net.i2p.client.streaming
  Package | Description
  --- | ---
  net.i2p.client.streaming | API, interfaces, and factory for a TCP-like (reliable, authenticated, in order) set of sockets for communicating over IP-like (unreliable, unauthenticated, unordered) I2P messages.
  net.i2p.client.streaming.impl | Implementation of a TCP-like (reliable, authenticated, in order) set of sockets for communicating over the IP-like (unreliable, unauthenticated, unordered) I2P messages.
  net.i2p.i2ptunnel | Implementation of preconfigured tunnels for both clients and servers, with a comprehensive UI for tunnel management and configuration.
  net.i2p.i2ptunnel.access | Definition-based incoming connection filter for I2PTunnel, allowing fine-grained access control for server tunnels.
  net.i2p.i2ptunnel.irc | IRC-specific tunnel enhancements including protocol filters and DCC (Direct Client-to-Client) connection handlers for IRC client tunnels.
  net.i2p.i2ptunnel.localServer | Lightweight HTTP server for serving static resources (CSS, images) used by I2PTunnel HTTP client proxy error pages.
  net.i2p.i2ptunnel.socks | SOCKS protocol tunnel implementation for I2P, supporting SOCKS 4, 4a, and 5.
  net.i2p.sam | The SAM (Simple Anonymous Messaging) client API.
  org.klomp.snark | I2P version of the snark bittorrent client, imported in 2005 and heavily enhanced to add a web UI, DHT support, and other features.

- Classes in net.i2p.client.streaming used by net.i2p.client.streaming
  Class and Description
  AcceptingChannel As this does not (yet) extend ServerSocketChannel it cannot be returned by StandardServerSocket.getChannel(), until we implement an I2P SocketAddress class.
  I2PServerSocket Streaming server socket returned by `I2PSocketManager.getServerSocket()`.
  I2PSocket Streaming socket returned by `I2PSocketManager.connect(Destination)`.
  I2PSocket.SocketErrorListener Deprecated, unimplemented, does nothing.
  I2PSocketAddress A SocketAddress (Destination + port) so we can have SocketChannels.
  I2PSocketManager Centralize the coordination and multiplexing of the local client's streaming.
  I2PSocketManager.DisconnectListener Listener for notification when an I2P session is disconnected
  I2PSocketOptions Define the configuration for streaming and verifying data on the socket.
  IncomingConnectionFilter Something that filters incoming streaming connections.

- Classes in net.i2p.client.streaming used by net.i2p.client.streaming.impl
  Class and Description
  AcceptingChannel As this does not (yet) extend ServerSocketChannel it cannot be returned by StandardServerSocket.getChannel(), until we implement an I2P SocketAddress class.
  I2PServerSocket Streaming server socket returned by `I2PSocketManager.getServerSocket()`.
  I2PSocket Streaming socket returned by `I2PSocketManager.connect(Destination)`.
  I2PSocket.SocketErrorListener Deprecated, unimplemented, does nothing.
  I2PSocketManager Centralize the coordination and multiplexing of the local client's streaming.
  I2PSocketManager.DisconnectListener Listener for notification when an I2P session is disconnected
  I2PSocketOptions Define the configuration for streaming and verifying data on the socket.
  IncomingConnectionFilter Something that filters incoming streaming connections.
  RouterRestartException An I2PException thrown from I2PServerSocket.accept() when the router is restarting.

- Classes in net.i2p.client.streaming used by net.i2p.i2ptunnel
  Class and Description
  I2PServerSocket Streaming server socket returned by `I2PSocketManager.getServerSocket()`.
  I2PSocket Streaming socket returned by `I2PSocketManager.connect(Destination)`.
  I2PSocket.SocketErrorListener Deprecated, unimplemented, does nothing.
  I2PSocketException An I2P-specific IOException thrown from input and output streams, with a stored status code to be used for programmatic responses.
  I2PSocketManager Centralize the coordination and multiplexing of the local client's streaming.
  I2PSocketOptions Define the configuration for streaming and verifying data on the socket.

- Classes in net.i2p.client.streaming used by net.i2p.i2ptunnel.access
  Class and Description
  IncomingConnectionFilter Something that filters incoming streaming connections.
  StatefulConnectionFilter A ConnectionFilter that may hold state, can be started and stopped

- Classes in net.i2p.client.streaming used by net.i2p.i2ptunnel.irc
  Class and Description
  I2PSocket Streaming socket returned by `I2PSocketManager.connect(Destination)`.
  I2PSocketManager Centralize the coordination and multiplexing of the local client's streaming.

- Classes in net.i2p.client.streaming used by net.i2p.i2ptunnel.localServer
  Class and Description
  I2PSocketManager Centralize the coordination and multiplexing of the local client's streaming.

- Classes in net.i2p.client.streaming used by net.i2p.i2ptunnel.socks
  Class and Description
  I2PSocket Streaming socket returned by `I2PSocketManager.connect(Destination)`.
  I2PSocket.SocketErrorListener Deprecated, unimplemented, does nothing.
  I2PSocketAddress A SocketAddress (Destination + port) so we can have SocketChannels.
  I2PSocketOptions Define the configuration for streaming and verifying data on the socket.

- Classes in net.i2p.client.streaming used by net.i2p.sam
  Class and Description
  I2PServerSocket Streaming server socket returned by `I2PSocketManager.getServerSocket()`.
  I2PSocket Streaming socket returned by `I2PSocketManager.connect(Destination)`.
  I2PSocketManager Centralize the coordination and multiplexing of the local client's streaming.
  I2PSocketManager.DisconnectListener Listener for notification when an I2P session is disconnected

- Classes in net.i2p.client.streaming used by org.klomp.snark
  Class and Description
  I2PServerSocket Streaming server socket returned by `I2PSocketManager.getServerSocket()`.
  I2PSocket Streaming socket returned by `I2PSocketManager.connect(Destination)`.
  I2PSocketManager Centralize the coordination and multiplexing of the local client's streaming.
  I2PSocketManager.DisconnectListener Listener for notification when an I2P session is disconnected