package net.i2p.client.impl
Internal implementation of the I2P client SDK - the client side of the Invisible Internet Client Protocol (I2CP), separating implementation from the interfaces in net.i2p.client.
Implements the client side of I2CP; not to be used externally. Subject to change and not part of the public API.
- ClassDescriptionHandle I2CP BW replies from the router.Copied from net.i2p.router.client We need a single thread that writes so we don't have issues with the Piped Streams used in InternalSocket.Handle I2CP dest replies from the router.Handle I2CP disconnect messages from the router.Base class for handling I2CP messages.Handle I2CP dest replies from the router.Define a way to handle a particular type of message.Produce the various messages the session needs to send to the router.Base client implementation.Contains a map of message handlers that a session will want to use.Implement multiplexing with a 1-byte 'protocol' and a two-byte 'port'.Implementation of an I2P session running over TCP.Session state enumeration.Thread safe implementation of an I2P session running over TCP.I2PSession with protocol and portsCreate a new session for doing naming and bandwidth queries only.Return value of
I2PSession.lookupDest2(String, long).Handle I2CP MessagePayloadMessages from the router delivering the contents of a message by accepting it, decrypting the payload, adding it to the set of received messages, and telling the router that it has been received correctly.Contains the state of a payload message being sent to a peer.Handle I2CP MessageStatusMessages from the router.Handle I2CP RequestLeaseSetMessage from the router by granting all leases, using the specified expiration time for each lease.Handle I2CP RequestVariableLeaseSetMessage from the router by granting all leases, retaining the individual expiration time for each lease.Reduce tunnels or shutdown the session on idle if so configured.Handle I2CP SessionStatusMessagese from the router, updating the session as necessary.Handle I2CP time messages from the router.An additional session using another session's connection.