See: Description
Interface | Description |
---|---|
HandlerJobBuilder |
Defines a class that builds jobs to handle a particular message - these
builders are registered with the InNetMessagePool for various I2NP message
types, allowing immediate queueing of a handler job rather than waiting for
a polling job to come pick it up.
|
Job |
Defines an executable task
For use by the router only.
|
MessageSelector |
Define a mechanism to select what messages are associated with a particular
OutNetMessage.
|
PeerManagerFacade |
Manage peer references and keep them up to date so that when asked for peers,
it can provide appropriate peers according to the criteria provided.
|
ProfileManager | |
ReplyJob |
Defines an executable task that can be fired off in reply to a message
|
RouterClock.ClockShiftListener | |
RouterThrottle |
Gatekeeper for deciding whether to throttle the further processing
of messages through the router.
|
Service |
Define the manageable service interface for the subsystems in the I2P router
|
TunnelInfo |
Defines the information associated with a tunnel
|
TunnelManagerFacade |
Build and maintain tunnels throughout the network.
|
Class | Description |
---|---|
Banlist |
Routers are banlisted only if none of our transports can talk to them
or their signed router info is completely screwy.
|
Banlist.Entry | |
Blocklist |
Manage blocking by IP address, in a manner similar to the Banlist,
which blocks by router hash.
|
ClientManagerFacade |
Manage all interactions with clients
|
ClientMessage |
Wrap a message either destined for a local client or received from one.
|
ClientMessagePool |
Manage all of the inbound and outbound client messages maintained by the router.
|
ClientTunnelSettings |
Wrap up the client settings specifying their tunnel criteria
|
CommandLine |
Simple command line access to various utilities.
|
CommSystemFacade |
Manages the communication subsystem between peers, including connections,
listeners, transports, connection keys, etc.
|
InNetMessagePool |
Manage a pool of inbound InNetMessages.
|
JobImpl |
Base implementation of a Job
For use by the router only.
|
JobQueue |
Manage the pending jobs according to whatever algorithm is appropriate, giving
preference to earlier scheduled jobs.
|
JobQueueRunner |
a do run run run a do run run
|
JobStats |
Glorified struct to contain basic job stats.
|
JobTiming |
Define the timing requirements and statistics for a particular job
For use by the router only.
|
KeyManager |
Maintain all of the key pairs for the router.
|
LeaseSetKeys |
Wrap up the keys given to the router when a destination connects to it.
|
MessageHistory |
Simply act as a pen register of messages sent in and out of the router.
|
MessageValidator |
Singleton to manage the logic (and historical data) to determine whether a message
is valid or not (meaning it isn't expired and hasn't already been received).
|
MultiRouter |
Fire up multiple routers in the same VM, all with their own RouterContext
(and all that entails).
|
NetworkDatabaseFacade |
Defines the mechanism for interacting with I2P's network database
|
OutNetMessage |
Wrap up an outbound I2NP message, along with the information associated with its
delivery and jobs to be fired off if particular events occur.
|
OutNetMessagePool |
Maintain a pool of OutNetMessages destined for other routers, organized by
priority, expiring messages as necessary.
|
PeerSelectionCriteria |
Defines the criteria for selecting a set of peers for use when searching the
PeerManager
Only used by PeerTestJob, which may not have a point.
|
PersistentKeyRing |
ConcurrentHashMap with backing in the router.config file.
|
Router |
Main driver for the router.
|
RouterClock |
Alternate location for determining the time which takes into account an offset.
|
RouterContext |
Build off the core I2P context to provide a root for a router instance to
coordinate its resources.
|
RouterDoSThrottle | Deprecated
unused
|
RouterLaunch |
This is the class called by the runplain.sh script on linux
and the i2p.exe launcher on Windows.
|
RouterThrottleImpl |
Simple throttle that basically stops accepting messages or nontrivial
requests if the jobQueue lag is too large.
|
RouterVersion |
Expose a version string
|
StatisticsManager |
Publishes some statistics about the router in the netDB.
|
TunnelPoolSettings |
Wrap up the settings for a pool of tunnels.
|
Enum | Description |
---|---|
CommSystemFacade.Status |
Since the codes may change.
|
The I2P router application handles the I2P network communication.
It encompasses sending and receiving messages, building up tunnels, encrypting and decrypting (on multiple levels) where applicable, and so on.
Classes in this package, sub-packages, and others in router.jar are not for use by apps, clients or plugins (except for routerconsole). Subject to change. Not necessarily maintained as a stable API.
For applications bundling the I2P router, instantiate Router and call runRouter(), or use Router.main() or RouterLaunch. Most public methods in Router are maintained as a stable I2P for those bundling the router.