## Uses of Class
net.i2p.I2PException

- Packages that use I2PException
  Package | Description
  --- | ---
  net.i2p.client | Interfaces and factories for the base I2P SDK used to develop applications that communicate through I2P.
  net.i2p.client.impl | Internal implementation of the I2P client SDK, providing the client side of the I2CP protocol for applications communicating through I2P.
  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.data | These classes define the common data structures used by the various I2P protocols.
  net.i2p.data.i2cp | The Invisible Internet Client Protocol (I2CP) allows applications simplified access to I2P network without requiring them to deal with the issues involved with the Invisible Internet Network Protocol (I2NP).
  net.i2p.data.i2np | This package defines the low-level messages sent between routers, called Invisible Internet Network Protocol (I2NP).
  net.i2p.i2ptunnel | Implementation of preconfigured tunnels for both clients and servers, with a comprehensive UI for tunnel management and configuration.
  net.i2p.sam | The SAM (Simple Anonymous Messaging) client API.

- - ### Uses of I2PException in net.i2p.client

    Subclasses of I2PException in net.i2p.client
    Modifier and Type | Class and Description
    --- | ---
    `class` | `I2PSessionException` Thrown when there is a problem doing something on the session

    Methods in net.i2p.client that throw I2PException
    Modifier and Type | Method and Description
    --- | ---
    `Destination` | I2PClient.`createDestination(OutputStream destKeyStream)` Create a new destination with the default certificate creation properties and store it, along with the private encryption and signing keys at the specified location Caller must close stream.
    `Destination` | I2PSimpleClient.`createDestination(OutputStream destKeyStream)` Deprecated. Don't do this
    `Destination` | I2PClient.`createDestination(OutputStream destKeyStream, Certificate cert)` Create a new destination with the given certificate and store it, along with the private encryption and signing keys at the specified location Caller must close stream.
    `Destination` | I2PSimpleClient.`createDestination(OutputStream destKeyStream, Certificate cert)` Deprecated. Don't do this
    `Destination` | I2PClient.`createDestination(OutputStream destKeyStream, SigType type)` Create a destination with the given signature type.
    `Destination` | I2PSimpleClient.`createDestination(OutputStream destKeyStream, SigType type)` Deprecated. Don't do this

  - ### Uses of I2PException in net.i2p.client.impl

    Methods in net.i2p.client.impl that throw I2PException
    Modifier and Type | Method and Description
    --- | ---
    `Destination` | I2PClientImpl.`createDestination(OutputStream destKeyStream)` Create a destination with a DSA 1024/160 signature type and a null certificate.
    `Destination` | I2PClientImpl.`createDestination(OutputStream destKeyStream, Certificate cert)` Create the destination with the given payload and write it out along with the PrivateKey and SigningPrivateKey to the destKeyStream If cert is a KeyCertificate, the signing keypair will be of the specified type.
    `Destination` | I2PClientImpl.`createDestination(OutputStream destKeyStream, SigType type)` Create a destination with the given signature type.

  - ### Uses of I2PException in net.i2p.client.streaming

    Subclasses of I2PException in net.i2p.client.streaming
    Modifier and Type | Class and Description
    --- | ---
    `class` | `RouterRestartException` An I2PException thrown from I2PServerSocket.accept() when the router is restarting.

    Methods in net.i2p.client.streaming that throw I2PException
    Modifier and Type | Method and Description
    --- | ---
    `I2PSocket` | I2PServerSocket.`accept()` Waits for the next socket connecting.
    `protected abstract I2PSocket` | AcceptingChannel.`accept()` Accept an incoming connection.
    `void` | I2PServerSocket.`close()` Closes the socket.
    `I2PSocket` | I2PSocketManager.`connect(Destination peer)` Create a new connected socket (block until the socket is created)
    `I2PSocket` | I2PSocketManager.`connect(Destination peer, I2PSocketOptions options)` Create a new connected socket (block until the socket is created)

  - ### Uses of I2PException in net.i2p.client.streaming.impl

    Subclasses of I2PException in net.i2p.client.streaming.impl
    Modifier and Type | Class and Description
    --- | ---
    `class` | `TooManyStreamsException` We attempted to have more open streams than we are willing to put up with

    Methods in net.i2p.client.streaming.impl that throw I2PException
    Modifier and Type | Method and Description
    --- | ---
    `I2PSocket` | I2PServerSocketFull.`accept()` Waits for the next socket connecting.
    `I2PSocket` | I2PSocketManagerFull.`connect(Destination peer)` Create a new connected socket.
    `I2PSocket` | I2PSocketManagerFull.`connect(Destination peer, I2PSocketOptions options)` Create a new connected socket.
    `(package private) void` | ConnectionPacketHandler.`receivePacket(Packet packet, Connection con)` Takes ownership of the packet and call packet.releasePayload() unless it is passed to the MessageInputStream.
    `I2PSocket` | I2PSocketManagerFull.`receiveSocket()` The accept() call.

  - ### Uses of I2PException in net.i2p.data

    Subclasses of I2PException in net.i2p.data
    Modifier and Type | Class and Description
    --- | ---
    `class` | `DataFormatException` Thrown when the data was not available to read or write a DataStructure

    Methods in net.i2p.data that throw I2PException
    Modifier and Type | Method and Description
    --- | ---
    `Destination` | PrivateKeyFile.`createIfAbsent()` Create with the default signature type if nonexistent.
    `Destination` | PrivateKeyFile.`createIfAbsent(SigType type)` Create with the specified signature type if nonexistent.

  - ### Uses of I2PException in net.i2p.data.i2cp

    Subclasses of I2PException in net.i2p.data.i2cp
    Modifier and Type | Class and Description
    --- | ---
    `class` | `I2CPMessageException` Represent an error serializing or deserializing a message

  - ### Uses of I2PException in net.i2p.data.i2np

    Subclasses of I2PException in net.i2p.data.i2np
    Modifier and Type | Class and Description
    --- | ---
    `class` | `I2NPMessageException` Represent an error serializing or deserializing an APIMessage

  - ### Uses of I2PException in net.i2p.i2ptunnel

    Methods in net.i2p.i2ptunnel that throw I2PException
    Modifier and Type | Method and Description
    --- | ---
    `I2PSocket` | I2PTunnelClientBase.`createI2PSocket(Destination dest)` Create a new I2PSocket towards to the specified destination, adding it to the list of connections actually managed by this tunnel.
    `I2PSocket` | I2PTunnelClientBase.`createI2PSocket(Destination dest, I2PSocketOptions opt)` Create a new I2PSocket towards to the specified destination, adding it to the list of connections actually managed by this tunnel.
    `I2PSocket` | I2PTunnelClientBase.`createI2PSocket(Destination dest, int port)` Create a new I2PSocket towards to the specified destination, adding it to the list of connections actually managed by this tunnel.

  - ### Uses of I2PException in net.i2p.sam

    Methods in net.i2p.sam that throw I2PException
    Modifier and Type | Method and Description
    --- | ---
    `void` | SAMv3StreamSession.`accept(SAMv3Handler handler, boolean verbose)` Accept a single incoming STREAM on the socket stolen from the handler.
    `boolean` | SAMStreamSession.`connect(int id, String dest, Properties props)` Connect the SAM STREAM session to the specified Destination
    `void` | MasterSession.`connect(SAMv3Handler handler, String dest, Properties props)`
    `void` | SAMv3StreamSession.`connect(SAMv3Handler handler, String dest, Properties props)` Connect the SAM STREAM session to the specified Destination for a single connection, using the socket stolen from the handler.