## Uses of Class
net.i2p.data.i2cp.SessionId

- Packages that use SessionId
  Package | Description
  --- | ---
  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.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.router.client | Router-side implementation of the I2CP (I2P Client Protocol) interface for application integration.

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

    Fields in net.i2p.client.impl declared as SessionId
    Modifier and Type | Field and Description
    --- | ---
    `(package private) static SessionId` | I2PSessionImpl.`DUMMY_SESSION`

    Methods in net.i2p.client.impl that return SessionId
    Modifier and Type | Method and Description
    --- | ---
    `(package private) SessionId` | I2PSessionImpl.`getSessionId()` Retrieve the session's ID

    Methods in net.i2p.client.impl with parameters of type SessionId
    Modifier and Type | Method and Description
    --- | ---
    `(package private) void` | I2PSessionImpl.`setSessionId(SessionId id)`

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

    Fields in net.i2p.data.i2cp declared as SessionId
    Modifier and Type | Field and Description
    --- | ---
    `protected SessionId` | CreateLeaseSetMessage.`_sessionId`
    `protected SessionId` | SendMessageMessage.`_sessionId`

    Methods in net.i2p.data.i2cp that return SessionId
    Modifier and Type | Method and Description
    --- | ---
    `SessionId` | HostLookupMessage.`getSessionId()`
    `SessionId` | CreateLeaseSetMessage.`getSessionId()`
    `SessionId` | RequestLeaseSetMessage.`getSessionId()`
    `SessionId` | ReportAbuseMessage.`getSessionId()`
    `SessionId` | HostReplyMessage.`getSessionId()`
    `SessionId` | RequestVariableLeaseSetMessage.`getSessionId()`
    `SessionId` | BlindingInfoMessage.`getSessionId()` Returns the session ID for this message.
    `SessionId` | ReconfigureSessionMessage.`getSessionId()`
    `SessionId` | DestroySessionMessage.`getSessionId()`
    `SessionId` | SessionStatusMessage.`getSessionId()`
    `SessionId` | SendMessageMessage.`getSessionId()`
    `SessionId` | HostLookupMessage.`sessionId()` Return the SessionId for this message.
    `SessionId` | ReceiveMessageBeginMessage.`sessionId()` Return the SessionId for this message.
    `SessionId` | CreateLeaseSetMessage.`sessionId()` Return the SessionId for this message.
    `SessionId` | RequestLeaseSetMessage.`sessionId()` Return the SessionId for this message.
    `SessionId` | ReportAbuseMessage.`sessionId()` Return the SessionId for this message.
    `SessionId` | I2CPMessageImpl.`sessionId()` Return the SessionId for this type of message.
    `SessionId` | HostReplyMessage.`sessionId()` Return the SessionId for this message.
    `SessionId` | I2CPMessage.`sessionId()` Return the SessionId for this type of message.
    `SessionId` | MessageStatusMessage.`sessionId()` Return the SessionId for this message.
    `SessionId` | RequestVariableLeaseSetMessage.`sessionId()` Return the SessionId for this message.
    `SessionId` | BlindingInfoMessage.`sessionId()` Return the SessionId for this message.
    `SessionId` | ReconfigureSessionMessage.`sessionId()` Return the SessionId for this message.
    `SessionId` | DestroySessionMessage.`sessionId()` Return the SessionId for this message.
    `SessionId` | ReceiveMessageEndMessage.`sessionId()` Return the SessionId for this message.
    `SessionId` | SessionStatusMessage.`sessionId()` Return the SessionId for this message.
    `SessionId` | MessagePayloadMessage.`sessionId()` Return the SessionId for this message.
    `SessionId` | SendMessageMessage.`sessionId()` Return the SessionId for this message.

    Methods in net.i2p.data.i2cp with parameters of type SessionId
    Modifier and Type | Method and Description
    --- | ---
    `void` | CreateLeaseSetMessage.`setSessionId(SessionId id)`
    `void` | RequestLeaseSetMessage.`setSessionId(SessionId id)`
    `void` | ReportAbuseMessage.`setSessionId(SessionId id)`
    `void` | RequestVariableLeaseSetMessage.`setSessionId(SessionId id)`
    `void` | ReconfigureSessionMessage.`setSessionId(SessionId id)`
    `void` | DestroySessionMessage.`setSessionId(SessionId id)`
    `void` | SessionStatusMessage.`setSessionId(SessionId id)`
    `void` | SendMessageMessage.`setSessionId(SessionId id)` Deprecated. use 4-arg constructor

    Constructors in net.i2p.data.i2cp with parameters of type SessionId
    Constructor and Description
    `BlindingInfoMessage(BlindData bd, SessionId id)` This is the constructor used by I2CP client-side.
    `BlindingInfoMessage(Destination d, SessionId id, int expiration, int authType, SigType blindType, PrivateKey privKey, String secret)` Creates a BlindingInfoMessage for a destination.
    `BlindingInfoMessage(Hash h, SessionId id, int expiration, int authType, SigType blindType, PrivateKey privKey, String secret)` Deprecated. unimplemented on router side
    `BlindingInfoMessage(SigningPublicKey s, SessionId id, int expiration, int authType, SigType blindType, PrivateKey privKey, String secret)` Creates a BlindingInfoMessage for a signing public key.
    `BlindingInfoMessage(String h, SessionId id, int expiration, int authType, SigType blindType, PrivateKey privKey, String secret)` Deprecated. unimplemented on router side
    `HostLookupMessage(SessionId id, Hash h, long reqID, long timeout)`
    `HostLookupMessage(SessionId id, String host, long reqID, long timeout)`
    `HostReplyMessage(SessionId id, Destination d, long reqID)` A message with RESULT_SUCCESS and a non-null Destination.
    `HostReplyMessage(SessionId id, int failureCode, long reqID)` A message with a failure code and no Destination.
    `SendMessageExpiresMessage(SessionId sessID, Destination dest, Payload payload, long nonce)` For writing
    `SendMessageExpiresMessage(SessionId sessID, Destination dest, Payload payload, long nonce, DateAndFlags options)` For writing
    `SendMessageMessage(SessionId sessID, Destination dest, Payload payload, long nonce)` For writing

  - ### Uses of SessionId in net.i2p.router.client

    Fields in net.i2p.router.client declared as SessionId
    Modifier and Type | Field and Description
    --- | ---
    `static SessionId` | ClientManager.`UNKNOWN_SESSION_ID`

    Methods in net.i2p.router.client that return SessionId
    Modifier and Type | Method and Description
    --- | ---
    `(package private) SessionId` | ClientConnectionRunner.`getSessionId(Hash h)` Subsession aware.

    Methods in net.i2p.router.client that return types with arguments of type SessionId
    Modifier and Type | Method and Description
    --- | ---
    `(package private) List<SessionId>` | ClientConnectionRunner.`getSessionIds()` Subsession aware.

    Methods in net.i2p.router.client with parameters of type SessionId
    Modifier and Type | Method and Description
    --- | ---
    `(package private) void` | ClientConnectionRunner.`ackSendMessage(SessionId sid, MessageId id, long nonce)` Send a notification to the client that their message (id specified) was accepted for delivery (but not necessarily delivered) Doesn't do anything if i2cp.messageReliability = "none" or if the nonce is 0.
    `SessionConfig` | ClientConnectionRunner.`getConfig(SessionId id)` Current client's config, will be null if session not found IS subsession aware.
    `Hash` | ClientConnectionRunner.`getDestHash(SessionId id)` Return the hash for the given ID
    `Destination` | ClientConnectionRunner.`getDestination(SessionId id)` Return the dest for the given ID
    `(package private) void` | ClientConnectionRunner.`removeSession(SessionId id)` Kill the session.
    `(package private) void` | ClientConnectionRunner.`setSessionId(Hash hash, SessionId id)` To be called only by ClientManager.
    `void` | ClientManager.`unregisterSession(SessionId id, Destination dest)` Remove only the following session.

    Constructors in net.i2p.router.client with parameters of type SessionId
    Constructor and Description
    `LookupDestJob(RouterContext context, ClientConnectionRunner runner, long reqID, long timeout, SessionId sessID, Hash h, String name, Hash fromLocalDest)` One of h or name non-null.