Packages that use I2PAppContext
Package
Description
M-Lab NDT speed test plugin code imported from Vuze, used by the router console speed test.
Web100 Network Diagnostic Tool applet behind the router console speed test.
Fortuna pseudo-random number generator from GNU Crypto, modified for I2P.
The SusiDNS webapp, which is the user interface for the addressbook application and the local naming service (hosts database) implemented in
net.i2p.client.naming. The SusiMail webapp (mail.war): webmail interface with POP3 and SMTP clients over I2P and local caching.
Core I2P package providing fundamental interfaces, version information, and entry points to essential I2P services, centered on I2PAppContext.
Address book application for fetching and maintaining I2P host databases from subscription sources.
Interfaces for classes to be started and stopped via clients.config.
System tray applet that launches a browser to the router console when the router is ready.
Interfaces and factories for the base I2P SDK used to develop applications that communicate through I2P.
Provides a standard way for reading and writing messages transferred over I2P so that the recipient has an authenticated mechanism to reply to the sender.
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. Naming service for resolving human-readable names (such as ident.i2p) into I2P destinations, providing a standard interface without JNDI complexity.
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.
Implementation of a TCP-like (reliable, authenticated, in order) set of sockets for communicating over the IP-like (unreliable, unauthenticated, unordered) I2P messages.
Core cryptographic primitives used throughout I2P: symmetric ciphers (AES, ChaCha20), hashes (SHA-1, SHA-256, SHA-384, SHA-512), HMAC and HKDF key derivation, the ElGamal and DSA/EdDSA/RedDSA engines, key and certificate utilities, and the entropy harvester.
Common data structures used by the I2P protocols: Destination, LeaseSet, PublicKey, Signature, Certificate and their friends.
Low-level messages sent between routers - the Invisible Internet Network Protocol (I2NP).
Router-specific data structures: RouterInfo and RouterIdentity with their transport addresses and capabilities, router key generation, and the optionally password-protected router private key file.
Desktop GUI for monitoring and controlling the router from the system tray: status display, start/stop/restart controls and console access.
Internationalization support for the desktop GUI, including pluralized resource handling.
Router communication for the desktop GUI: status monitoring and control commands over I2CP (the Invisible Internet Client Protocol) and the router's service interfaces.
I2P Control service: a JSON-RPC 2.0 interface for controlling and monitoring the router from external applications, served over TLS on the configured port.
Authentication and authorization for the I2P Control service: token management and keystore handling.
I2P Control handlers for reading and writing router configuration parameters.
Implementation of preconfigured tunnels for clients and servers, including special-purpose tunnels for IRC, SOCKS, HTTP and streaming.
Definition-based incoming connection filter for server tunnels, with fine-grained access control by destination.
Minimal embedded HTTP server used by the I2PTunnel local admin interface.
SOCKS 4, 4a and 5 server implementations exposing I2P client tunnels to SOCKS clients.
StreamR adaptive-rate streaming tunnel: streams audio and video over a single I2P tunnel, adapting the encoder rate to the measured tunnel bandwidth.
Base classes for UDP client and server tunnels, mapping a local UDP port to an I2P tunnel through the sinks and sources in
net.i2p.i2ptunnel.udp. Public API classes for programmatic tunnel configuration and management, providing a stable API for external applications, including the Android client.
The I2PTunnel configuration web interface (i2ptunnel.war): servlets and helpers for creating and editing tunnels.
Jetty integration: starts the embedded Jetty server for all I2P webapps.
Generic Kademlia distributed hash table implementation supporting multiple hash algorithms (SHA1, SHA256 and others).
The I2P router application handles I2P network communication.
Router-specific cryptography: ElGamal+AES garlic encryption (ElGamalAESEngine), session key and tag caching for repeated peer communication (TransientSessionKeyManager), router-family shared keys (FamilyKeyCrypto), and the ratchet and pqc subpackages.
Post-quantum hybrid key encapsulation built on the bundled Bouncy Castle ML-KEM primitives.
The Double Ratchet with X25519 key agreement and ECIES hybrid encryption, used by the NTCP2 and SSU transports for session encryption.
The router's default naming service, BlockfileNamingService, backed by the Metanotion BlockFile database (
net.metanotion) in hostsdb.dat. Parser for the I2P news format, which follows Atom with additional metadata for the update notification feature.
The I2P startup package loads configuration when I2P is started.
Offline analysis tools for detecting Sybil attacks and malicious peer coordination by correlating peer relationships.
Periodic maintenance jobs: stats coalescing, cryptographic algorithm checks, liveliness marking, out-of-memory handling, thread dumps, the watchdog, graceful shutdown and soft restart, update installation, republishing and config reloading.
Router time synchronization: peer-based clock sync (RouterTimestamper) and an NTP client with time zone support.
Transport framework: the transport lifecycle and pool management, connection handling and bandwidth throttling for the transports (NTCP2 over TCP, SSU over UDP) that carry I2P messages between routers, plus NAT traversal via UPnP and GeoIP country lookups.
Transport-layer key agreement: the X25519 key factory used by the NTCP2 and SSU2 session handshakes for peer authentication and session encryption.
NTCP2, the TCP transport: framed, ratchet-encrypted and mutually authenticated connections between routers.
SSU2, the UDP transport: datagram sessions with Holepunch peer discovery, plus the older SSU compatibility code.
Tunnel messages and the tunnel layer: the
TunnelManagerFacade, tunnel build request and reply processing, and the inbound and outbound tunnel structures. Tunnel pool management: pool lifecycle, peer selection, build scheduling and failure handling for client and exploratory tunnels.
Router-side update checking and installation: fetching update notifications, downloading and verifying updates, and staging them for the restart.
Router utility classes: CoDel active queue management, time-decaying collections, a diagnostics ring buffer, CIDR matching, and password management.
The router console user interface, implemented in routerconsole.jar, with these classes supporting the webapp in routerconsole.war.
Helpers and handlers for the router console user interface, packaged in routerconsole.war and accessible only from JSP files.
The SAM bridge: a simple text protocol server letting applications in any language use I2P streaming and datagram sessions without implementing the Invisible Internet Client Protocol (I2CP).
Demo and test client classes.
Servlet glue classes shared across I2P webapps, originally from susimail: error and default servlets, request wrapping and webapp provider configuration.
Statistics collection framework used throughout the router for adaptive operation, monitoring and debugging.
General utility classes shared across the core libraries and the router.
General utility classes and helper functions.
I2P version of the Snark BitTorrent client, enhanced for I2P: peers are I2P destinations, torrents can be served anonymously as hidden services, and metadata carries I2P-specific comment fields.
BitTorrent distributed hash table (DHT) implementation following the Mainline protocol, for trackerless peer discovery.
Command-line client for running Snark without the web interface.
The I2PSnark web interface (i2psnark.war): servlets and helpers for torrent management, file browsing and configuration.
Uses of I2PAppContext in com.vuze.plugins.mlab
Fields in com.vuze.plugins.mlab declared as I2PAppContextMethods in com.vuze.plugins.mlab with parameters of type I2PAppContextModifier and TypeMethodDescriptionstatic MLabRunnerMLabRunner.getInstance(I2PAppContext ctx) Gets the runner instance, creating it if none exists.Constructors in com.vuze.plugins.mlab with parameters of type I2PAppContextModifierConstructorDescriptionprivateMLabRunner(I2PAppContext ctx) Creates a new MLabRunner instance.Uses of I2PAppContext in edu.internet2.ndt
Fields in edu.internet2.ndt declared as I2PAppContextUses of I2PAppContext in gnu.crypto.prng
Fields in gnu.crypto.prng declared as I2PAppContextModifier and TypeFieldDescriptionprivate final I2PAppContextAsyncFortunaStandalone._contextThe app context.Constructors in gnu.crypto.prng with parameters of type I2PAppContextModifierConstructorDescriptionAsyncFortunaStandalone(I2PAppContext context) Create a new AsyncFortunaStandalone.Uses of I2PAppContext in i2p.susi.dns
Fields in i2p.susi.dns declared as I2PAppContextModifier and TypeFieldDescriptionprotected final I2PAppContextBaseBean._contextThe I2P application context.private final I2PAppContextMessages._contextSupplies the locale the translated strings are looked up in.private final I2PAppContextTranslateSVGServlet._contextApp context for naming and other services.Uses of I2PAppContext in i2p.susi.webmail
Fields in i2p.susi.webmail declared as I2PAppContextModifier and TypeFieldDescriptionprivate final I2PAppContextMailCache._contextThe app context.private final I2PAppContextMessages._contextSupplies the locale the translated strings are looked up in.private final I2PAppContextPersistentMailCache._contextThe app context.Methods in i2p.susi.webmail with parameters of type I2PAppContextModifier and TypeMethodDescriptionprivate static StringWebMail.consoleGetString(String s, I2PAppContext ctx) Translate with the console bundle.private static String[]WebMail.getThemes(I2PAppContext ctx) Find all themes installed under docs/themes/susimail.Constructors in i2p.susi.webmail with parameters of type I2PAppContextModifierConstructorDescription(package private)MailCache(I2PAppContext ctx, POP3MailBox mailbox, String folderName, String host, int port, String user, String pass) Does NOT load the mails in.PersistentMailCache(I2PAppContext ctx, String host, int port, String user, String pass, String folder) Use the params to generate a unique directory name.Uses of I2PAppContext in net.i2p
Fields in net.i2p declared as I2PAppContextModifier and TypeFieldDescriptionprotected static I2PAppContextI2PAppContext._globalAppContextThe context that components without explicit root are bound.Methods in net.i2p that return I2PAppContextModifier and TypeMethodDescriptionstatic I2PAppContextI2PAppContext.getCurrentContext()Pull the default context, WITHOUT creating a new one.static I2PAppContextI2PAppContext.getGlobalContext()Pull the default context, creating a new one if necessary, else using the first one created.Methods in net.i2p with parameters of type I2PAppContextModifier and TypeMethodDescriptionprotected static booleanI2PAppContext.setGlobalContext(I2PAppContext ctx) Default context, unless there is one already.Uses of I2PAppContext in net.i2p.addressbook
Fields in net.i2p.addressbook declared as I2PAppContextModifier and TypeFieldDescriptionprivate final I2PAppContextHostChecker._contextThe app context.private final I2PAppContextHostPing._contextThe app context.private final I2PAppContextMessages._contextSupplies the locale the translated strings are looked up in.Uses of I2PAppContext in net.i2p.app
Constructors in net.i2p.app with parameters of type I2PAppContextModifierConstructorDescriptionCreates a new ClientAppManagerImpl.Uses of I2PAppContext in net.i2p.apps.systray
Fields in net.i2p.apps.systray declared as I2PAppContextConstructors in net.i2p.apps.systray with parameters of type I2PAppContextModifierConstructorDescriptionUrlLauncher(I2PAppContext context, ClientAppManager mgr, String[] args) ClientApp constructor used fromclients.config.Uses of I2PAppContext in net.i2p.client
Methods in net.i2p.client with parameters of type I2PAppContextModifier and TypeMethodDescriptionstatic I2PClientI2PClientFactory.createClient(I2PAppContext context) Create a new instance of the appropriate I2PClient with a specific context.I2PSimpleClient.createSession(I2PAppContext context, Properties options) Create a new session (though do not connect it yet).Uses of I2PAppContext in net.i2p.client.datagram
Methods in net.i2p.client.datagram with parameters of type I2PAppContextModifier and TypeMethodDescriptionstatic Datagram2Datagram2.load(I2PAppContext ctx, I2PSession session, byte[] dgram) Load an I2P repliable datagram and verify the signature.static Datagram3Datagram3.load(I2PAppContext ctx, I2PSession session, byte[] dgram) Load an I2P repliable datagram3.static byte[]Datagram2.make(I2PAppContext ctx, I2PSession session, byte[] payload, Hash tohash) Make a repliable I2P datagram2 containing the specified payload.static byte[]Datagram2.make(I2PAppContext ctx, I2PSession session, byte[] payload, Hash tohash, Properties options) Make a repliable I2P datagram2 containing the specified payload.static byte[]Datagram3.make(I2PAppContext ctx, I2PSession session, byte[] payload) Make a repliable I2P datagram3 containing the specified payload.static byte[]Datagram3.make(I2PAppContext ctx, I2PSession session, byte[] payload, Properties options) Make a repliable I2P datagram3 containing the specified payload.Uses of I2PAppContext in net.i2p.client.impl
Fields in net.i2p.client.impl declared as I2PAppContextModifier and TypeFieldDescriptionprotected final I2PAppContextHandlerImpl._contextThe application context.private final I2PAppContextI2CPMessageProducer._contextThe app context.private final I2PAppContextI2PClientImpl._contextThe router context the client runs in.protected final I2PAppContextI2PSessionImpl._contextApp context, kept separate so we can get rid of singletons.private final I2PAppContextMessageState._contextThe app context.private final I2PAppContextSessionIdleTimer._contextThe app context.Methods in net.i2p.client.impl that return I2PAppContextModifier and TypeMethodDescription(package private) I2PAppContextI2PSessionImpl.getContext()For Subsessions.Methods in net.i2p.client.impl with parameters of type I2PAppContextModifier and TypeMethodDescriptionI2PClientImpl.createSession(I2PAppContext context, InputStream destKeyStream, Properties options) Create a new session (though do not connect it yet).Constructors in net.i2p.client.impl with parameters of type I2PAppContextModifierConstructorDescriptionCreate a handler for I2CP bandwidth limit messages.Create a new DestReplyMessageHandler.DisconnectMessageHandler(I2PAppContext context) Create the handler for I2CP disconnect messages.HandlerImpl(I2PAppContext context, int type) Store the app context and handler message type.Create the handler for I2CP host replies.I2CPMessageProducer(I2PAppContext context) Create a message producer for the given context.Construct a client bound to a specific application context.I2PClientMessageHandlerMap(I2PAppContext context) Handler map for all standard I2CP message types.Create a new demultiplexer.I2PSessionImpl(I2PAppContext context, InputStream destKeyStream, Properties options) Create a new session, reading the Destination, PrivateKey, and SigningPrivateKey from the destKeyStream, and using the specified options to connect to the routerprotectedI2PSessionImpl(I2PAppContext context, Properties options, I2PClientMessageHandlerMap handlerMap) For extension by SimpleSession (no dest).privateI2PSessionImpl(I2PAppContext context, Properties options, I2PClientMessageHandlerMap handlerMap, I2CPMessageProducer producer, boolean hasDest) Basic setup of the session's final fields.protectedI2PSessionImpl2(I2PAppContext ctx, InputStream destKeyStream, Properties options) For extension by I2PSessionMuxedImplprotectedI2PSessionImpl2(I2PAppContext context, Properties options, I2PClientMessageHandlerMap handlerMap) For extension by SimpleSession (no dest).I2PSessionMuxedImpl(I2PAppContext ctx, InputStream destKeyStream, Properties options) Create a new muxed session.I2PSimpleSession(I2PAppContext context, Properties options) Create a new session for doing naming and bandwidth queries only.Create the handler for I2CP message payload messages.MessageState(I2PAppContext ctx, long nonce, String prefix) For synchronous waiting for accept withMessageState.waitForAccept(long).MessageState(I2PAppContext ctx, long nonce, I2PSession session, long expires, SendMessageStatusListener listener) Track a sent message's delivery state for asynchronous notification.MessageStatusMessageHandler(I2PAppContext context) Create the handler for I2CP message status messages.Registers the handler for the standard request-lease-set message type.protectedRequestLeaseSetMessageHandler(I2PAppContext context, int messageType) For extension.Sets up the handler for the variable-lease-set message type.SessionIdleTimer(I2PAppContext context, I2PSessionImpl session, boolean reduce, boolean shutdown) Construct a timer that reduces, shuts down, or both.SessionStatusMessageHandler(I2PAppContext context) Create the handler for I2CP session status messages.Create the handler for I2CP time messages.SimpleMessageHandlerMap(I2PAppContext context) Registers the handlers a simple session needs.Uses of I2PAppContext in net.i2p.client.naming
Fields in net.i2p.client.naming declared as I2PAppContextModifier and TypeFieldDescriptionprotected final I2PAppContextNamingService._contextThe app context.Methods in net.i2p.client.naming with parameters of type I2PAppContextModifier and TypeMethodDescriptionstatic final NamingServiceNamingService.createInstance(I2PAppContext context) WARNING - for use byI2PAppContextonly - others must useI2PAppContext.namingService().private static PropertiesLookupDest.getOpts(I2PAppContext ctx) I2CP options from the context.(package private) static DestinationLookupDest.lookupBase32Hash(I2PAppContext ctx, String key) Look up a destination by Base32 hash.private static DestinationLookupDest.lookupHash(I2PAppContext ctx, byte[] h) Look up a destination by hash.(package private) static DestinationLookupDest.lookupHostname(I2PAppContext ctx, String hostname) Any hostname, but this is for long-format b32.Constructors in net.i2p.client.naming with parameters of type I2PAppContextModifierConstructorDescriptionprotectedDummyNamingService(I2PAppContext context) The naming service should only be constructed and accessed through the application context.EepGetNamingService(I2PAppContext context) The naming service should only be constructed and accessed through the application context.HostsTxtNamingService(I2PAppContext context) The naming service should only be constructed and accessed through the application context.protectedLookupDest(I2PAppContext context) Create a new LookupDest instance.MetaNamingService(I2PAppContext context) Adds the services from thei2p.nameservicelistproperty, in order, as chained services.MetaNamingService(I2PAppContext context, List<NamingService> services) Create a new meta naming service with the specified services.protectedNamingService(I2PAppContext context) The naming service should only be constructed and accessed through the application context.SingleFileNamingService(I2PAppContext context, String filename) Application context.Uses of I2PAppContext in net.i2p.client.streaming
Constructors in net.i2p.client.streaming with parameters of type I2PAppContextModifierConstructorDescriptionI2PSocketEepGet(I2PAppContext ctx, I2PSocketManager mgr, int numRetries, long minSize, long maxSize, String outputFile, OutputStream outputStream, String url) Creates an I2PSocketEepGet with full configuration.I2PSocketEepGet(I2PAppContext ctx, I2PSocketManager mgr, int numRetries, String outputFile, String url) Creates an I2PSocketEepGet with default size limits.Uses of I2PAppContext in net.i2p.client.streaming.impl
Fields in net.i2p.client.streaming.impl declared as I2PAppContextModifier and TypeFieldDescriptionprivate final I2PAppContextConnection._contextRouter context for accessing services and configuration.private final I2PAppContextConnectionDataReceiver._contextApplication context.private final I2PAppContextConnectionHandler._contextThe app context.private final I2PAppContextConnectionManager._contextThe app context.private final I2PAppContextConnectionPacketHandler._contextApplication context.private final I2PAppContextI2PSocketManagerFull._contextThe app context.private final I2PAppContextMessageHandler._contextThe context the handler runs in.private final I2PAppContextMessageOutputStream._contextThe app context.private final I2PAppContextPacketDispatcher._contextThe app context.private final I2PAppContextPacketDispatcher.Worker._contextThe app context.private final I2PAppContextPacketLocal._contextThe app context.private final I2PAppContextPacketQueue._contextThe app context.private final I2PAppContextPcapWriter._contextThe app context.private final I2PAppContextSchedulerChooser._contextThe context the schedulers run in.protected final I2PAppContextSchedulerImpl._contextApplication context the scheduled connections live in.private final I2PAppContextSimpleBandwidthEstimator._contextThe app context.private final I2PAppContextTCBShare._contextThe app context.private final I2PAppContextPacketHandler.contextThe context the handler runs in.Methods in net.i2p.client.streaming.impl with parameters of type I2PAppContextModifier and TypeMethodDescriptionprivate booleanPacket.checkOfflineSignature(I2PAppContext ctx, SigningPublicKey spk) Check the offline signature block, which the session key signs over the expiry and the transient key.private static voidI2PSocketManagerFull.debugInit(I2PAppContext ctx) Initialize PCAP logging if the property is set.static intConnectionPacketHandler.getMaxSlowStartWindow(I2PAppContext ctx) Maximum slow start window size.private voidPacket.logNoKeyType(I2PAppContext ctx, SigningPublicKey spk) Log once that a signature key type is unavailable.booleanPacket.verifySignature(I2PAppContext ctx, byte[] buffer) Determine whether the signature on the data is valid.booleanPacket.verifySignature(I2PAppContext ctx, SigningPublicKey altSPK, byte[] buffer) Determine whether the signature on the data is valid.private booleanPacket.verifyWithKey(I2PAppContext ctx, SigningPublicKey spk, byte[] buffer) Rebuild the packet as it was signed and check the signature against it.Constructors in net.i2p.client.streaming.impl with parameters of type I2PAppContextModifierConstructorDescriptionConnection(I2PAppContext ctx, ConnectionManager manager, I2PSession session, SchedulerChooser chooser, SimpleTimer2 timer, PacketQueue queue, ConnectionPacketHandler handler, ConnectionOptions opts, boolean isInbound) Constructor for this connection.ConnectionDataReceiver(I2PAppContext ctx, Connection con) Create a data receiver for the given connection.ConnectionHandler(I2PAppContext context, ConnectionManager mgr, SimpleTimer2 timer) Creates a new instance of ConnectionHandler.ConnectionManager(I2PAppContext context, I2PSession session, ConnectionOptions defaultOptions, IncomingConnectionFilter connectionFilter) Manage all conns for this session.ConnectionPacketHandler(I2PAppContext context) Create a new ConnectionPacketHandler.I2PSocketFull(Connection con, I2PAppContext context) Bridge between a connection and the I2PSocket API.I2PSocketManagerFull(I2PAppContext context, I2PSession session, Properties opts, String name, IncomingConnectionFilter connectionFilter) This is whatI2PSocketManagerFactory.createManager()returns.MessageHandler(I2PAppContext ctx, ConnectionManager mgr) Creates a new MessageHandler.MessageInputStream(I2PAppContext ctx, int maxMessageSize, int maxWindowSize, int maxBufferSize) New stream with the specified buffer limits.MessageInputStream(I2PAppContext ctx, int maxMessageSize, int maxWindowSize, int maxBufferSize, int maxPacketCount) New stream with the specified buffer limits.MessageOutputStream(I2PAppContext ctx, SimpleTimer2 timer, MessageOutputStream.DataReceiver receiver, int bufSize, int initBufSize) Stream with default passive flush delay.MessageOutputStream(I2PAppContext ctx, SimpleTimer2 timer, MessageOutputStream.DataReceiver receiver, int bufSize, int initBufSize, int passiveFlushDelay) Stream with specified passive flush delay.(package private)PacketDispatcher(int workerCount, int queueCapacity, PacketDispatcher.PacketProcessor processor, I2PAppContext context) Create and start the shard workers.PacketHandler(I2PAppContext ctx, ConnectionManager mgr) Stores the context and manager, and opens the logger for the class.PacketLocal(I2PAppContext ctx, Destination to, I2PSession session) Constructor for a packet not bound to a connection.PacketLocal(I2PAppContext ctx, Destination to, Connection con) Constructor for a packet bound to a connection.PacketQueue(I2PAppContext context, SimpleTimer2 timer) Opens the log, creates the status map and starts expiring old entries.PcapWriter(I2PAppContext ctx, String file) Creates a new PcapWriter that writes to the specified file in the log directory.(package private)RetransmissionTimer(I2PAppContext ctx, String name) New timer with dedicated SimpleTimer2 shards.SchedulerChooser(I2PAppContext context) Create a new scheduler chooser with all available schedulers.Creates the closed-connection scheduler for the given application context.Creates the closing-connection scheduler for the given application context.Sets up the scheduler for established bulk-profile connections.Passes the context on to the shared scheduler base.Sets up the scheduler for connections that are finished and awaiting cleanup.Hands the application context to the superclass.Create a new scheduler with the given context.Passes the context on to the shared scheduler base.Sets up the scheduler for connections awaiting our own SYN.(package private)New estimator bound to the given options.TCBShare(I2PAppContext ctx, SimpleTimer2 timer) Creates a new TCB share cache.(package private)Worker(int shard, int queueCapacity, PacketDispatcher.PacketProcessor processor, I2PAppContext context) A shard's worker, not started here - the dispatcher starts the whole array at once so a resize can swap the shards over as a unit.Uses of I2PAppContext in net.i2p.crypto
Fields in net.i2p.crypto declared as I2PAppContextModifier and TypeFieldDescriptionprotected final I2PAppContextAESEngine._contextI2P application context.private final I2PAppContextDSAEngine._contextThe context supplying the random.private final I2PAppContextElGamalEngine._contextSupplies the random source and precomputation.private final I2PAppContextHKDF._contextSupplies the PRNG the derivation runs on.private final I2PAppContextKeyGenerator._contextSupplies the random used to generate keys.private final I2PAppContextSU3File._contextThe app context.private final I2PAppContextTrustedUpdate._contextThe app context.private static I2PAppContextBlinding._hkdfCtxThe contextBlinding._hkdfwas built for, so a context change forces a rebuild.private final I2PAppContextYKGenerator.ctxThe app context.Methods in net.i2p.crypto with parameters of type I2PAppContextModifier and TypeMethodDescriptionstatic BlindDataBlinding.decode(I2PAppContext ctx, byte[] b) Decode a new-format b32 address.static BlindDataBlinding.decode(I2PAppContext ctx, String address) Decode a new-format b32 address.static SigningPrivateKeyBlinding.generateAlpha(I2PAppContext ctx, SigningPublicKey destspk, String secret) Generate alpha for current time.static SigningPrivateKeyBlinding.generateAlpha(I2PAppContext ctx, SigningPublicKey destspk, String secret, long now) Generate alpha for the given time.static final byte[]AESEngine.getPadding(I2PAppContext context, int curSize, long minPaddedSize) Return random bytes for padding the data to a mod 16 size so that it is at least minPaddedSize(package private) static HKDFBlinding.hkdf(I2PAppContext ctx) Get the shared HKDF for a context.static booleanCertUtil.isRevoked(I2PAppContext ctx, Certificate cert) Is the certificate revoked? This loads the CRLs from disk.static CertStoreCertUtil.loadCRLs(I2PAppContext ctx) Load CRLs from standard locations.private static voidCertUtil.log(I2PAppContext ctx, int level, String msg, Throwable t) Logs a certificate message at a given level.private static voidKeyStoreUtil.log(I2PAppContext ctx, int level, String msg, Throwable t) Writes one entry to the router log.Constructors in net.i2p.crypto with parameters of type I2PAppContextModifierConstructorDescriptionprotectedAESEngine(I2PAppContext ctx) Constructor for subclasses.CryptixAESEngine(I2PAppContext context) Create the engine, allocating the cipher cache only when the system AES-NI provider is in use.DSAEngine(I2PAppContext context) Create a DSA engine for the given context.ElGamalEngine(I2PAppContext context) The ElGamal engine should only be constructed and accessed through the application context.HKDF(I2PAppContext context) Create an instance bound to an application context.HMAC256Generator(I2PAppContext context) Create a new HMAC256Generator.KeyGenerator(I2PAppContext context) Create a new KeyGenerator.SessionKeyManager(I2PAppContext context) A dummy SessionKeyManager for testing or for passing toElGamalAESEngine.decrypt(byte[], PrivateKey).SHA256Generator(I2PAppContext context) Accept and ignore the context, for construction compatibility.SU3File(I2PAppContext context, File file) SU3 file from the given file, using the given context.TrustedUpdate(I2PAppContext context) Trusted update verifier using the given context.YKGenerator(I2PAppContext context) Caller must also callYKGenerator.start()to start the background precalc thread.Uses of I2PAppContext in net.i2p.data
Fields in net.i2p.data declared as I2PAppContextModifier and TypeFieldDescriptionprivate final I2PAppContextBlindData._contextThe app context.private static I2PAppContextEncryptedLeaseSet._hkdfCtxThe contextEncryptedLeaseSet._hkdfwas built for, so a context change forces a rebuild.Methods in net.i2p.data with parameters of type I2PAppContextModifier and TypeMethodDescriptionprivate byte[]EncryptedLeaseSet.getHKDFInput(I2PAppContext ctx) The HKDF input (no per-client auth).private byte[]EncryptedLeaseSet.getHKDFInput(I2PAppContext ctx, byte[] authcookie) The HKDF input (with per-client auth).private byte[]EncryptedLeaseSet.getSubcredential(I2PAppContext ctx) The subcredential.private static byte[]EncryptedLeaseSet.hash(I2PAppContext ctx, byte[] p, byte[] d) Hash with a personalization string.private static HKDFEncryptedLeaseSet.hkdf(I2PAppContext ctx) Get the shared HKDF for a context.Constructors in net.i2p.data with parameters of type I2PAppContextModifierConstructorDescriptionBlindData(I2PAppContext ctx, Destination dest, SigType blindType, String secret) Creates a new BlindData instance for the given destination.BlindData(I2PAppContext ctx, Destination dest, SigType blindType, String secret, int authType, PrivateKey authKey) Creates a new BlindData instance for the given destination with authentication.BlindData(I2PAppContext ctx, SigningPublicKey spk, SigType blindType, String secret) Creates a new BlindData instance for the given signing public key.BlindData(I2PAppContext ctx, SigningPublicKey spk, SigType blindType, String secret, int authType, PrivateKey authKey) Creates a new BlindData instance for the given signing public key with authentication.Uses of I2PAppContext in net.i2p.data.i2np
Fields in net.i2p.data.i2np declared as I2PAppContextModifier and TypeFieldDescriptionprivate final I2PAppContextGarlicClove._contextApplication context for logging and configuration.private final I2PAppContextI2NPMessageHandler._contextThe context the messages are read for.protected final I2PAppContextI2NPMessageImpl._contextApplication context this message belongs to.private final I2PAppContextGarlicClovePool.contextSupplies the pool's configuration.Methods in net.i2p.data.i2np with parameters of type I2PAppContextModifier and TypeMethodDescriptionI2NPMessageImpl.Builder.build(I2PAppContext ctx) Instantiate a new I2NPMessage to be populated shortly.static EncryptedBuildRecordBuildResponseRecord.create(I2PAppContext ctx, int status, SessionKey replyKey, byte[] replyIV, long responseMessageId) Creates a new AES-encrypted response record.static EncryptedBuildRecordBuildResponseRecord.create(I2PAppContext ctx, int status, SessionKey replyKey, byte[] replyAD, Properties options) Creates a new ChaCha/Poly-encrypted response record (long format).static I2NPMessageI2NPMessageImpl.createMessage(I2PAppContext context, int type) Yes, this is fairly ugly, but its the only place it ever happens.static ShortEncryptedBuildRecordBuildResponseRecord.createShort(I2PAppContext ctx, int status, SessionKey replyKey, byte[] replyAD, Properties options, int slot) Creates a new ChaCha/Poly-encrypted response record (short format).BuildRequestRecord.encryptRecord(I2PAppContext ctx, PublicKey toKey, Hash toPeer) Encrypts the record using ElGamal.static I2NPMessageI2NPMessageImpl.fromRawByteArray(I2PAppContext ctx, byte[] buffer, int offset, int len, I2NPMessageHandler handler) Read the message with a short 5-byte header.static I2NPMessageI2NPMessageImpl.fromRawByteArrayNTCP2(I2PAppContext ctx, byte[] buffer, int offset, int len, I2NPMessageHandler handler) Read the message with a short 9-byte header.Constructors in net.i2p.data.i2np with parameters of type I2PAppContextModifierConstructorDescriptionBuildRequestRecord(I2PAppContext ctx, long receiveTunnelId, long nextTunnelId, Hash nextHop, long nextMsgId, boolean isInGateway, boolean isOutEndpoint, Properties options) Creates a new ECIES short build request record.BuildRequestRecord(I2PAppContext ctx, long receiveTunnelId, long nextTunnelId, Hash nextHop, long nextMsgId, SessionKey layerKey, SessionKey ivKey, SessionKey replyKey, byte[] iv, boolean isInGateway, boolean isOutEndpoint, Properties options) Creates a new ECIES long build request record.BuildRequestRecord(I2PAppContext ctx, long receiveTunnelId, Hash peer, long nextTunnelId, Hash nextHop, long nextMsgId, SessionKey layerKey, SessionKey ivKey, SessionKey replyKey, byte[] iv, boolean isInGateway, boolean isOutEndpoint) Creates a new ElGamal build request record.DatabaseLookupMessage(I2PAppContext context) Creates a database lookup message for the given context.DatabaseLookupMessage(I2PAppContext context, boolean locallyCreated) Lookup message for the given context.DatabaseSearchReplyMessage(I2PAppContext context) Builds a reply carrying no peers yet, with the list ready to fill.DatabaseStoreMessage(I2PAppContext context) Creates a new DatabaseStoreMessage.DataMessage(I2PAppContext context) Create a new DataMessage.DeliveryStatusMessage(I2PAppContext context) Create a delivery status message.FastI2NPMessageImpl(I2PAppContext context) Create a message that will carry the one-byte checksum of the fast (5 byte header) format.GarlicClove(I2PAppContext context) Creates an empty clove with no id until one is read or set.GarlicClovePool(I2PAppContext context) Create a pool with default capacity (4).GarlicClovePool(I2PAppContext context, int initialCapacity) Create a pool with the specified initial capacity.GarlicMessage(I2PAppContext context) Creates an empty garlic message, to be filled in on read.I2NPMessageHandler(I2PAppContext context) Message handler for reading and writing I2NP messages.I2NPMessageImpl(I2PAppContext context) Create an empty message with the default expiration.Zero record count, will be set withOutboundTunnelBuildReplyMessage.readMessage(byte[], int, int, int).OutboundTunnelBuildReplyMessage(I2PAppContext context, int records) Creates a reply holding the given number of encrypted records.ShortTunnelBuildMessage(I2PAppContext context) Zero record count, will be set withShortTunnelBuildMessage.readMessage(byte[], int, int, int).ShortTunnelBuildMessage(I2PAppContext context, int records) Create the message preallocated for the given number of build records.ShortTunnelBuildReplyMessage(I2PAppContext context, int records) Creates a reply with preallocated slots for the given number of records.TunnelBuildMessage(I2PAppContext context) Creates a build message with the default record count.protectedTunnelBuildMessage(I2PAppContext context, int records) Creates a build message carrying the given number of build records.TunnelBuildMessageBase(I2PAppContext context) Create with the default number of records.protectedTunnelBuildMessageBase(I2PAppContext context, int records) Leaves the count to be set by readMessage().TunnelBuildReplyMessage(I2PAppContext context) Passes the context on with the standard eight-record count.protectedTunnelBuildReplyMessage(I2PAppContext context, int records) Create a tunnel build reply message with a custom record count.TunnelDataMessage(I2PAppContext context) Constructor with 10-second message expiration from context clock.TunnelGatewayMessage(I2PAppContext context) Constructor with 10-second message expiration from context clock.UnknownI2NPMessage(I2PAppContext context, int type) Message with the given type, unknown to the router.VariableTunnelBuildMessage(I2PAppContext context) Zero record count, will be set withVariableTunnelBuildMessage.readMessage(byte[], int, int, int).VariableTunnelBuildMessage(I2PAppContext context, int records) Constructor with the given number of build records.Zero record count, will be set withVariableTunnelBuildReplyMessage.readMessage(byte[], int, int, int).VariableTunnelBuildReplyMessage(I2PAppContext context, int records) Constructor with the given number of build reply records.Uses of I2PAppContext in net.i2p.data.router
Fields in net.i2p.data.router declared as I2PAppContextModifier and TypeFieldDescriptionprivate final I2PAppContextRouterKeyGenerator._contextThe app context.private final I2PAppContextRouterInfo.ctxRouter context.Constructors in net.i2p.data.router with parameters of type I2PAppContextModifierConstructorDescriptionRouterKeyGenerator(I2PAppContext context) Constructor that initializes GMT date formatter and generates current routing key modifier data.Uses of I2PAppContext in net.i2p.desktopgui
Fields in net.i2p.desktopgui declared as I2PAppContextModifier and TypeFieldDescriptionprivate final I2PAppContextExternalMain._appContextThe application context.private final I2PAppContextMain._appContextThe app context, always present.protected final I2PAppContextTrayManager._appContextThe router context the tray manager runs in.Constructors in net.i2p.desktopgui with parameters of type I2PAppContextModifierConstructorDescriptionExternalMain(I2PAppContext ctx, ClientAppManager mgr, String[] args) Create a new ExternalMain with the specified context and manager.ExternalTrayManager(I2PAppContext ctx, boolean useSwing) Create a new ExternalTrayManager.protectedTrayManager(I2PAppContext ctx, boolean useSwing) Create a new tray manager.Uses of I2PAppContext in net.i2p.desktopgui.i18n
Methods in net.i2p.desktopgui.i18n with parameters of type I2PAppContextModifier and TypeMethodDescriptionstatic StringDesktopguiTranslator._t(I2PAppContext ctx, String s) Translate a string using the desktopgui message bundle.static StringDesktopguiTranslator._t(I2PAppContext ctx, String s, Object o) Translate a string with one parameter using the desktopgui message bundle.Uses of I2PAppContext in net.i2p.desktopgui.router
Methods in net.i2p.desktopgui.router that return I2PAppContextModifier and TypeMethodDescriptionprivate static I2PAppContextRouterManager.getAppContext()The running router's context, if any.Uses of I2PAppContext in net.i2p.i2pcontrol
Fields in net.i2p.i2pcontrol declared as I2PAppContextModifier and TypeFieldDescriptionprivate final I2PAppContextI2PControlController._appContextThe app context, never null.private final I2PAppContextHostCheckHandler._contextSupplies the configuration and the log.Constructors in net.i2p.i2pcontrol with parameters of type I2PAppContextUses of I2PAppContext in net.i2p.i2pcontrol.security
Fields in net.i2p.i2pcontrol.security declared as I2PAppContextModifier and TypeFieldDescriptionprivate final I2PAppContextSecurityManager._contextThe context the manager runs in.Constructors in net.i2p.i2pcontrol.security with parameters of type I2PAppContextModifierConstructorDescriptionSecurityManager(I2PAppContext ctx, KeyStoreProvider ksp, ConfigurationManager conf) Create the security manager and start the sweeper that expires auth tokens; no token store is loaded here.Uses of I2PAppContext in net.i2p.i2pcontrol.servlets.configuration
Constructors in net.i2p.i2pcontrol.servlets.configuration with parameters of type I2PAppContextModifierConstructorDescriptionConfigurationManager(I2PAppContext ctx, File dir, boolean isPlugin) Chooses the config filename for the plugin or webapp case, then reads it.Uses of I2PAppContext in net.i2p.i2ptunnel
Fields in net.i2p.i2ptunnel declared as I2PAppContextModifier and TypeFieldDescriptionprivate final I2PAppContextI2PTunnel._contextThe app context.protected final I2PAppContextI2PTunnelClientBase._contextThe application context.private final I2PAppContextTunnelControllerGroup._contextThe app context.private final I2PAppContextI2PTunnelHTTPServer.CompressedRequestor._ctxThe app context.Methods in net.i2p.i2ptunnel that return I2PAppContextModifier and TypeMethodDescriptionI2PTunnel.getContext()Gets the application context.TunnelControllerGroup.getContext()Retrieves the application context the group was created with.Methods in net.i2p.i2ptunnel with parameters of type I2PAppContextModifier and TypeMethodDescriptionprotected static StringI2PTunnelHTTPClientBase.getErrorPage(I2PAppContext ctx, String base, String backup) Load the error page header file, e.g.static TunnelControllerGroupTunnelControllerGroup.getInstance(I2PAppContext ctx) In I2PAppContext will instantiate if necessary and always return non-null.(package private) static StringI2PTunnelHTTPServer.CompressedRequestor.readAndRewriteServerResponse(InputStream serverin, int timeout, I2PAppContext ctx) Read the server response headers, filter them for security, and re-format them for the client.private static StringI2PTunnelHTTPClientBase.readFile(I2PAppContext ctx, File file) Reads a small text file into a string.I2PTunnelHTTPServer.readHeaders(I2PSocket socket, InputStream in, StringBuilder command, String[] skipHeaders, I2PAppContext ctx, long initialTimeout) Read headers from the input stream, using an array of skip headers.I2PTunnelHTTPServer.readHeaders(I2PSocket socket, InputStream in, StringBuilder command, Set<String> skipHeaders, I2PAppContext ctx, long initialTimeout) From I2P to server: socket non-null, in null.I2PTunnelHTTPServer.readHeadersInternal(I2PSocket socket, InputStream in, StringBuilder command, Set<String> skipHeaders, I2PAppContext ctx, long initialTimeout) Read and parse HTTP headers, filtering out specified headers and enforcing size limits.I2PTunnelHTTPServer.readRequestHeaders(I2PSocket socket, StringBuilder command, int requestCount, String peerB32, I2PAppContext ctx, Log log, String tunnelId) Read the request headers with the default timeouts.I2PTunnelHTTPServer.readRequestHeaders(I2PSocket socket, StringBuilder command, int requestCount, String peerB32, I2PAppContext ctx, Log log, String tunnelId, long headerTimeout, long keepAliveTimeout) Read the request headers, handling the specific errors that can occur by sending the appropriate error response to the client.Constructors in net.i2p.i2ptunnel with parameters of type I2PAppContextModifierConstructorDescriptionCompressedRequestor(Socket webserver, I2PSocket browser, String headers, I2PAppContext ctx, Log log, boolean shouldCompress, boolean upgrade, ThreadPoolExecutor tpe, boolean keepalive, AtomicInteger waiter, java.util.function.Supplier<ThreadPoolExecutor> ioPool) Serves a gzipped response from the web server to the browser.CompressedRequestor(Socket webserver, I2PSocket browser, String headers, I2PAppContext ctx, Log log, boolean shouldCompress, boolean upgrade, ThreadPoolExecutor tpe, boolean keepalive, AtomicInteger waiter, java.util.function.Supplier<ThreadPoolExecutor> ioPool, String tunnelId) Serves a gzipped response, with an optional stall watchdog.TunnelControllerGroup(I2PAppContext context, ClientAppManager mgr, String[] args) Instantiation only.Uses of I2PAppContext in net.i2p.i2ptunnel.access
Fields in net.i2p.i2ptunnel.access declared as I2PAppContextMethods in net.i2p.i2ptunnel.access with parameters of type I2PAppContextModifier and TypeMethodDescriptionstatic StatefulConnectionFilterFilterFactory.createFilter(I2PAppContext context, File definition) Creates an instance of IncomingConnectionFilter based on the definition contained in the given file.Constructors in net.i2p.i2ptunnel.access with parameters of type I2PAppContextModifierConstructorDescription(package private)AccessFilter(I2PAppContext context, FilterDefinition definition) Create a new access filter.Uses of I2PAppContext in net.i2p.i2ptunnel.localServer
Methods in net.i2p.i2ptunnel.localServer with parameters of type I2PAppContextModifier and TypeMethodDescriptionstatic voidLocalHTTPServer.serveLocalFile(I2PAppContext context, I2PSocketManager sockMgr, OutputStream out, String method, String targetRequest, String query, String proxyNonce, boolean allowGzip) Very simple web server.Uses of I2PAppContext in net.i2p.i2ptunnel.socks
Fields in net.i2p.i2ptunnel.socks declared as I2PAppContextModifier and TypeFieldDescriptionprotected final I2PAppContextSOCKSServer._contextThe application context, used for the log manager and property lookups.Methods in net.i2p.i2ptunnel.socks with parameters of type I2PAppContextModifier and TypeMethodDescriptionstatic SOCKSServerSOCKSServerFactory.createSOCKSServer(I2PAppContext ctx, Socket s, Properties props) Create a new SOCKS server, using the provided socket (that must be connected to a client) to select the proper SOCKS protocol version.Constructors in net.i2p.i2ptunnel.socks with parameters of type I2PAppContextModifierConstructorDescriptionSOCKS4aServer(I2PAppContext ctx, Socket clientSock, Properties props) Create a SOCKS4a server that communicates with the client using the specified socket.SOCKS5Server(I2PAppContext ctx, Socket clientSock, Properties props) Create a SOCKS5 server that communicates with the client using the specified socket.protectedSOCKSServer(I2PAppContext ctx, Socket clientSock, Properties props) Create a handler for one accepted SOCKS connection.Uses of I2PAppContext in net.i2p.i2ptunnel.streamr
Fields in net.i2p.i2ptunnel.streamr declared as I2PAppContextConstructors in net.i2p.i2ptunnel.streamr with parameters of type I2PAppContextModifierConstructorDescriptionPinger(I2PAppContext ctx, int fromPort) Creates a pinger for the given I2CP from port.Uses of I2PAppContext in net.i2p.i2ptunnel.udpTunnel
Fields in net.i2p.i2ptunnel.udpTunnel declared as I2PAppContextModifier and TypeFieldDescriptionprotected I2PAppContextI2PTunnelUDPClientBase._contextThe I2P app context.Uses of I2PAppContext in net.i2p.i2ptunnel.ui
Fields in net.i2p.i2ptunnel.ui declared as I2PAppContextModifier and TypeFieldDescriptionprivate final I2PAppContextGeneralHelper._contextThe context the tunnel settings live in.private final I2PAppContextMessages._contextSupplies the locale the translated strings are looked up in.protected final I2PAppContextTunnelConfig._contextApp context, for the global context and key generation.Methods in net.i2p.i2ptunnel.ui with parameters of type I2PAppContextModifier and TypeMethodDescriptionprotected static StringGeneralHelper._t(String key, I2PAppContext context) Translate a string using the given context.static StringMessages._t(String key, I2PAppContext ctx) Static translation method.GeneralHelper.deleteTunnel(I2PAppContext context, TunnelControllerGroup tcg, int tunnel, String privKeyFile) Stop the tunnel, delete from config, rename the private key file if in the default directory.static StringMessages.ngettext(String s, String p, int n, I2PAppContext ctx) translate (ngettext).GeneralHelper.saveConfig(I2PAppContext context, TunnelControllerGroup tcg, int tunnel) Save the configuration for an existing tunnel to disk.GeneralHelper.saveTunnel(I2PAppContext context, TunnelControllerGroup tcg, int tunnel, TunnelConfig config) Save the configuration for a new or existing tunnel to disk.Constructors in net.i2p.i2ptunnel.ui with parameters of type I2PAppContextModifierConstructorDescriptionGeneralHelper(I2PAppContext context, TunnelControllerGroup tcg) Construct a new helper with a specific context.Uses of I2PAppContext in net.i2p.i2ptunnel.web
Fields in net.i2p.i2ptunnel.web declared as I2PAppContextModifier and TypeFieldDescriptionprotected final I2PAppContextIndexBean._contextApp context, for properties, randomness and key generation.Uses of I2PAppContext in net.i2p.jetty
Fields in net.i2p.jetty declared as I2PAppContextModifier and TypeFieldDescriptionprivate final I2PAppContextJettyStart._contextThe app context, null when run standalone from main.Constructors in net.i2p.jetty with parameters of type I2PAppContextModifierConstructorDescriptionI2PLogger(I2PAppContext ctx) Construct a logger against a specific application context.JettyStart(I2PAppContext context, ClientAppManager mgr, String[] args) All args must be XML file names.Uses of I2PAppContext in net.i2p.kademlia
Fields in net.i2p.kademlia declared as I2PAppContextModifier and TypeFieldDescriptionprivate final I2PAppContextKBucketImpl._contextSupplies the clock and the random.private final I2PAppContextKBucketSet._contextThe app context.protected final I2PAppContextRandomTrimmer._ctxThe app context, used for its random() source.Constructors in net.i2p.kademlia with parameters of type I2PAppContextModifierConstructorDescriptionKBucketImpl(I2PAppContext context, int begin, int end, int max, KBucketTrimmer<T> trimmer) All entries in this bucket will have at least one bit different from us in the range [begin, end] inclusive.KBucketSet(I2PAppContext context, T us, int max, int b) Use the default trim strategy, which removes a random entry.KBucketSet(I2PAppContext context, T us, int max, int b, KBucketTrimmer<T> trimmer) Use the supplied trim strategy.RandomIfOldTrimmer(I2PAppContext ctx, int max) Create a trimmer that only trims a bucket that hasn't changed in 5 minutes.RandomTrimmer(I2PAppContext ctx, int max) Retains the context and the bucket size limit.Uses of I2PAppContext in net.i2p.router
Subclasses of I2PAppContext in net.i2p.routerModifier and TypeClassDescriptionclassExtended application context that provides centralized resource coordination for router instances.Fields in net.i2p.router declared as I2PAppContextModifier and TypeFieldDescriptionprivate static I2PAppContextMultiRouter._defaultContextThe default context shared by the test routers.Methods in net.i2p.router with parameters of type I2PAppContextModifier and TypeMethodDescriptionCommSystemFacade.Status.toLocalizedStatusString(I2PAppContext ctx) Status string translated to the current language if available.Uses of I2PAppContext in net.i2p.router.crypto
Fields in net.i2p.router.crypto declared as I2PAppContextModifier and TypeFieldDescriptionprivate final I2PAppContextElGamalAESEngine._contextThe context supplying the random.protected final I2PAppContextTransientSessionKeyManager._contextThe router context.private final I2PAppContextTransientSessionKeyManager.OutboundSession._contextThe app context.Constructors in net.i2p.router.crypto with parameters of type I2PAppContextModifierConstructorDescriptionCreates engine with given context and initializes crypto frequency stats.OutboundSession(I2PAppContext ctx, Log log, PublicKey target, SessionKey key) Creates state for tracking one outbound ElGamal session to a single target.TransientSessionKeyManager(I2PAppContext context) The session key manager should only be constructed and accessed through the application context.TransientSessionKeyManager(I2PAppContext context, int tagsToSend, int lowThreshold) Log manager supplies the logger.Uses of I2PAppContext in net.i2p.router.crypto.pqc
Fields in net.i2p.router.crypto.pqc declared as I2PAppContextModifier and TypeFieldDescriptionprivate final I2PAppContextMLKEMKeyFactory._contextThe app context.Constructors in net.i2p.router.crypto.pqc with parameters of type I2PAppContextUses of I2PAppContext in net.i2p.router.crypto.ratchet
Fields in net.i2p.router.crypto.ratchet declared as I2PAppContextModifier and TypeFieldDescriptionprivate final I2PAppContextElligator2._contextThe app context.private final I2PAppContextRatchetPayload.PaddingBlock.ctxThe app context.Methods in net.i2p.router.crypto.ratchet with parameters of type I2PAppContextModifier and TypeMethodDescription(package private) static KeyPairRatchetTagSet.nextKeys(I2PAppContext ctx) A fresh XDHE key pair to carry in the next forward key.static intRatchetPayload.processPayload(I2PAppContext ctx, RatchetPayload.PayloadCallback cb, byte[] payload, int off, int length, boolean isHandshake) Process a ratchet payload, calling the callback for each block found.Constructors in net.i2p.router.crypto.ratchet with parameters of type I2PAppContextUses of I2PAppContext in net.i2p.router.naming
Constructors in net.i2p.router.naming with parameters of type I2PAppContextModifierConstructorDescriptionBlockfileNamingService(I2PAppContext context) Opens the database at hostsdb.blockfile or creates a new one and imports entries from hosts.txt, userhosts.txt, and privatehosts.txt.Uses of I2PAppContext in net.i2p.router.news
Fields in net.i2p.router.news declared as I2PAppContextModifier and TypeFieldDescriptionprivate final I2PAppContextNewsManager._contextThe app context.private final I2PAppContextNewsXMLParser._contextThe app context.Methods in net.i2p.router.news with parameters of type I2PAppContextModifier and TypeMethodDescriptionstatic booleanPersistNews.delete(I2PAppContext ctx, NewsEntry entry) Unused for now, as we don't have any way to remember it's deleted.private static StringPersistNews.idToName(I2PAppContext ctx, String id) Non-null.PersistNews.load(I2PAppContext ctx) This does not check for any missing values.static booleanPersistNews.store(I2PAppContext ctx, List<Node> entries) Store each entry.booleanBlocklistEntries.verify(I2PAppContext ctx) Verify the blocklist signature.Constructors in net.i2p.router.news with parameters of type I2PAppContextModifierConstructorDescriptionNewsManager(I2PAppContext ctx, ClientAppManager listener, String[] args) Create a news manager and mark it initialized; no news is fetched until the client app is started.Creates a new NewsXMLParser with the given context.XMLParser(I2PAppContext ctx) Creates a parser that logs under its own class.Uses of I2PAppContext in net.i2p.router.startup
Methods in net.i2p.router.startup with parameters of type I2PAppContextModifier and TypeMethodDescriptionstatic FileClientAppConfig.configDir(I2PAppContext ctx) This is the config dir.static FileClientAppConfig.configFile(I2PAppContext ctx) This is the old config file.static booleanClientAppConfig.isSplitConfig(I2PAppContext ctx) Only valid for the router's clients (not plugins).private static booleanClientAppConfig.migrate(I2PAppContext ctx, List<ClientAppConfig> apps, File from, File dir) Copies the app configs from the old file to individual files in the new directory.static voidClientAppConfig.writeClientAppConfig(I2PAppContext ctx, List<ClientAppConfig> apps) Classpath and stopargs not supported.static voidClientAppConfig.writeClientAppConfig(I2PAppContext ctx, ClientAppConfig app) Classpath and stopargs not supported.Uses of I2PAppContext in net.i2p.router.sybil
Fields in net.i2p.router.sybil declared as I2PAppContextModifier and TypeFieldDescriptionprivate final I2PAppContextPersistSybil._contextThe router the analysis runs on.Constructors in net.i2p.router.sybil with parameters of type I2PAppContextUses of I2PAppContext in net.i2p.router.tasks
Methods in net.i2p.router.tasks with parameters of type I2PAppContextModifier and TypeMethodDescriptionstatic booleanThreadDump.dump(I2PAppContext context, int secondsToWait) Signal the wrapper to asynchronously dump threads to wrapper.log.Uses of I2PAppContext in net.i2p.router.time
Fields in net.i2p.router.time declared as I2PAppContextModifier and TypeFieldDescriptionprivate final I2PAppContextRouterTimestamper._contextThe app context.private final I2PAppContextZones._contextThe context reading the zone files.Constructors in net.i2p.router.time with parameters of type I2PAppContextModifierConstructorDescriptionDoes not start.Does not start.RouterTimestamper(I2PAppContext ctx, Timestamper.UpdateListener lsnr, boolean daemon) Does not start.Zones(I2PAppContext ctx) Reads in the file in the constructor, so hold onto this.Uses of I2PAppContext in net.i2p.router.transport
Fields in net.i2p.router.transport declared as I2PAppContextModifier and TypeFieldDescriptionprivate final I2PAppContextGeoIP._contextThe app context.private final I2PAppContextUPnP._contextThe app context.Methods in net.i2p.router.transport with parameters of type I2PAppContextModifier and TypeMethodDescription(package private) static voidGeoIP.notifyVersion(I2PAppContext ctx, String subtype, long version) Tell the update manager.(package private) static voidGeoIP.notifyVersion(I2PAppContext ctx, String subtype, String version) Tell the update manager, with a version string as-is, e.g.private static String[]GeoIPv6.readGeoIPFile(I2PAppContext context, File geoFile, Long[] search, Map<String, String> codeCache, Log log) Lookup search items in the geoip file.static String[]GeoIPv6.readGeoIPFile(I2PAppContext context, Long[] search, Map<String, String> codeCache) Lookup search items in the geoip file.Constructors in net.i2p.router.transport with parameters of type I2PAppContextModifierConstructorDescriptionGeoIP(I2PAppContext context) GeoIP lookup service for IP to country mapping.UPnP(I2PAppContext context, int ssdpPort, int httpPort, InetAddress[] binds) Starts SSDP discovery and the control HTTP service on the given ports and addresses.Uses of I2PAppContext in net.i2p.router.transport.crypto
Fields in net.i2p.router.transport.crypto declared as I2PAppContextModifier and TypeFieldDescriptionprivate final I2PAppContextX25519KeyFactory._contextThe app context.Constructors in net.i2p.router.transport.crypto with parameters of type I2PAppContextUses of I2PAppContext in net.i2p.router.transport.ntcp
Fields in net.i2p.router.transport.ntcp declared as I2PAppContextModifier and TypeFieldDescriptionprivate final I2PAppContextNTCPSendFinisher._contextThe app context.private final I2PAppContextNTCP2Payload.PaddingBlock.ctxThe app context.Methods in net.i2p.router.transport.ntcp with parameters of type I2PAppContextModifier and TypeMethodDescriptionprivate static voidNTCP2Payload.processI2NP(I2PAppContext ctx, NTCP2Payload.PayloadCallback cb, byte[] payload, int i, int len) Parse an I2NP block (at least 9 bytes) and report it to the callback.static intNTCP2Payload.processPayload(I2PAppContext ctx, NTCP2Payload.PayloadCallback cb, byte[] payload, int off, int length, boolean isHandshake) Incoming payload.private static voidNTCP2Payload.processRouterInfo(I2PAppContext ctx, NTCP2Payload.PayloadCallback cb, byte[] payload, int i, int len, boolean isHandshake) Deserialize a ROUTERINFO block (a 1-byte flag then the RouterInfo) and report it to the callback.Constructors in net.i2p.router.transport.ntcp with parameters of type I2PAppContextModifierConstructorDescriptionCaptures the current clock time for the timestamp the block carries.NTCPSendFinisher(I2PAppContext context, NTCPTransport transport) Create a new send finisher.PaddingBlock(I2PAppContext context, int size) With random data.Uses of I2PAppContext in net.i2p.router.transport.udp
Fields in net.i2p.router.transport.udp declared as I2PAppContextModifier and TypeFieldDescriptionprivate final I2PAppContextOutboundMessageState._contextThe app context.private final I2PAppContextSimpleBandwidthEstimator._contextThe app context.private final I2PAppContextSSU2Payload.PaddingBlock.ctxThe app context for the padding size.Methods in net.i2p.router.transport.udp with parameters of type I2PAppContextModifier and TypeMethodDescriptionstatic byte[]SSU2Util.createPeerTestData(I2PAppContext ctx, Hash h, Hash h2, PeerTestState.Role role, long nonce, byte[] ip, int port, SigningPrivateKey spk) Make the data for the peer test block.static byte[]SSU2Util.createRelayRequestData(I2PAppContext ctx, Hash h, Hash h2, long nonce, long tag, byte[] ip, int port, SigningPrivateKey spk) Make the data for the relay request block.static byte[]SSU2Util.createRelayResponseData(I2PAppContext ctx, Hash h, int code, long nonce, byte[] ip, int port, SigningPrivateKey spk, long token) Make the data for the relay response block.static byte[]SSU2Util.hkdf(I2PAppContext ctx, byte[] key, String info) 32 byte output, ZEROLEN data.(package private) static voidSSU2Payload.parseI2NP(I2PAppContext ctx, SSU2Payload.PayloadCallback cb, byte[] payload, int i, int len, boolean isHandshake) Parse an I2NP block (data blocks only, never in handshakes).(package private) static voidSSU2Payload.parseRouterInfo(I2PAppContext ctx, SSU2Payload.PayloadCallback cb, byte[] payload, int i, int len, boolean isHandshake) Parse a ROUTERINFO block: one- or two-byte header, then either a single (possibly compressed) RouterInfo or a fragment piece.(package private) static RouterInfoSSU2Payload.parseRouterInfoSingle(I2PAppContext ctx, ByteArrayInputStream bais) Read a complete RouterInfo from the stream, falling back to an alternate signature verification when the strict parse fails.(package private) static voidSSU2Payload.parseUnknown(I2PAppContext ctx, SSU2Payload.PayloadCallback cb, int type, int len) Unknown block type: warn once per occurrence and skip the block.static intSSU2Payload.processPayload(I2PAppContext ctx, SSU2Payload.PayloadCallback cb, byte[] payload, int off, int length, boolean isHandshake, RemoteHostId from) Incoming payload.(package private) static RouterInfoSSU2Payload.recoverRouterInfo(I2PAppContext ctx, ByteArrayInputStream bais, DataFormatException dfe) Alternate verification of a RouterInfo whose strict parse failed: if the signed prefix is valid, return a partially filled-in RI (published = -1) so the session layer can still act on the identity.static SignatureSSU2Util.sign(I2PAppContext ctx, byte[] prologue, Hash h, Hash h2, byte[] data, int datalen, SigningPrivateKey spk) Sign the relay or peer test data, using the prologue and hash as the initial data, and then the provided data.static booleanSSU2Util.validateSig(I2PAppContext ctx, byte[] prologue, Hash h, Hash h2, byte[] data, SigningPublicKey spk) Validate the signed relay or peer test data, using the prologue and hash as the initial data, and then the provided data which ends with a signature of the specified type.Constructors in net.i2p.router.transport.udp with parameters of type I2PAppContextModifierConstructorDescriptionCreate a date/time block with the current clock time.OutboundMessageState(I2PAppContext context, I2NPMessage msg, PeerState peer) "injected" message from the establisher.privateOutboundMessageState(I2PAppContext context, OutNetMessage m, I2NPMessage msg, PeerState peer) Fragments the given message for transmission.OutboundMessageState(I2PAppContext context, OutNetMessage m, PeerState peer) Normal constructor.PaddingBlock(I2PAppContext context, int size) Create a padding block with random data.(package private)SimpleBandwidthEstimator(I2PAppContext ctx, PeerState state) Creates a new bandwidth estimator for the given peer.Uses of I2PAppContext in net.i2p.router.tunnel
Fields in net.i2p.router.tunnel declared as I2PAppContextModifier and TypeFieldDescriptionprivate final I2PAppContextFragmentedMessage._contextThe app context.protected final I2PAppContextHopProcessor._contextRouter or client context, supplying the log and the AES engine.private final I2PAppContextOutboundGatewayProcessor._contextThe router context the tunnel runs in.Methods in net.i2p.router.tunnel with parameters of type I2PAppContextModifier and TypeMethodDescription(package private) static voidOutboundGatewayProcessor.decrypt(I2PAppContext ctx, byte[] orig, int offset, int length, HopConfig config) Undo the crypto for a single hop.Constructors in net.i2p.router.tunnel with parameters of type I2PAppContextModifierConstructorDescriptionFragmentedMessage(I2PAppContext ctx, long messageId) Starts an empty reassembly buffer for one message id.HopProcessor(I2PAppContext ctx, HopConfig config, IVValidator validator) Create a processor for a single hop of a tunnel.InboundGatewayProcessor(I2PAppContext ctx, HopConfig config) Passes the config on with a validator that accepts every message.InboundSender(I2PAppContext ctx, HopConfig config) Binds the given context and hop config for the inbound gateway.Binds the router context and tunnel creator config.OutboundSender(I2PAppContext ctx, TunnelCreatorConfig config) Binds the given context and config, creating the outbound gateway processor.Uses of I2PAppContext in net.i2p.router.tunnel.pool
Fields in net.i2p.router.tunnel.pool declared as I2PAppContextModifier and TypeFieldDescriptionprivate final I2PAppContextBuildReplyHandler.ctxThe context handling the reply.Methods in net.i2p.router.tunnel.pool with parameters of type I2PAppContextModifier and TypeMethodDescriptionprivate static BuildRequestRecordBuildMessageGenerator.createUnencryptedRecord(I2PAppContext ctx, TunnelCreatorConfig cfg, int hop, Hash replyRouter, long replyTunnel, boolean isEC, boolean isShort, Properties props) Create an unencrypted build request record for a tunnel hop.static voidBuildMessageGenerator.layeredEncrypt(I2PAppContext ctx, TunnelBuildMessage msg, TunnelCreatorConfig cfg, List<Integer> order) Encrypt the records so their hop ident is visible at the appropriate times.Constructors in net.i2p.router.tunnel.pool with parameters of type I2PAppContextModifierConstructorDescriptionBuildReplyHandler(I2PAppContext context) Create a new build reply handler.Uses of I2PAppContext in net.i2p.router.update
Methods in net.i2p.router.update with parameters of type I2PAppContextModifier and TypeMethodDescriptionprivate static voidNewsHandler.test(I2PAppContext ctx, String phost, int pport, String url, File file) CLI fetch.Uses of I2PAppContext in net.i2p.router.util
Fields in net.i2p.router.util declared as I2PAppContextModifier and TypeFieldDescriptionprivate final I2PAppContextCoDelBlockingQueue._contextSupplies the clock and the statistics.protected final I2PAppContextDecayingBloomFilter._contextThe I2P app context.private final I2PAppContextEventLog._contextThe router context the log belongs to.protected final I2PAppContextPriBlockingQueue._contextThe I2P application context.Constructors in net.i2p.router.util with parameters of type I2PAppContextModifierConstructorDescriptionCoDelBlockingQueue(I2PAppContext ctx, String name, int capacity) Queue with default CoDel target and interval from properties.CoDelBlockingQueue(I2PAppContext ctx, String name, int capacity, int target, int interval) Queue with explicit CoDel target and interval.CoDelPriorityBlockingQueue(I2PAppContext ctx, String name, int initialCapacity) CoDel priority blocking queue with default target and interval.CoDelPriorityBlockingQueue(I2PAppContext ctx, String name, int initialCapacity, int target, int interval) Creates a queue and registers the per-priority drop stats and the delay stat under the given queue name, so the tuning page can graph them per queue.protectedDecayingBloomFilter(int durationMs, int entryBytes, String name, I2PAppContext context) Only for extension byDecayingHashSet, which validates entryBytes itself and never stretches entries, so it is deliberately not checked here.DecayingBloomFilter(I2PAppContext context, int durationMs, int entryBytes) Create a bloom filter that will decay its entries over time.DecayingBloomFilter(I2PAppContext context, int durationMs, int entryBytes, String name) Uses default m of 23, memory usage is 2 MB.DecayingBloomFilter(I2PAppContext context, int durationMs, int entryBytes, String name, int m) Memory usage is 2 * (2**m) bits or 2**(m-2) bytes, allocated up front for both buffers, so it does not grow with traffic.DecayingHashSet(I2PAppContext context, int durationMs, int entryBytes) Create a double-buffered hash set that will decay its entries over time.DecayingHashSet(I2PAppContext context, int durationMs, int entryBytes, String name) Decaying hash set with a custom name.(package private)DecayingHashSet(I2PAppContext context, int durationMs, int entryBytes, String name, int maxEntries) As above, with an explicit cap.EventLog(I2PAppContext ctx, File file) Event log for the given file, which should be absolute.PriBlockingQueue(I2PAppContext ctx, String name, int initialCapacity) Priority blocking queue with the given initial capacity.Uses of I2PAppContext in net.i2p.router.web
Fields in net.i2p.router.web declared as I2PAppContextModifier and TypeFieldDescriptionprivate final I2PAppContextGraphListener._contextThe context whose stats are graphed.private final I2PAppContextGraphRenderer._contextThe app context.private final I2PAppContextHostCheckHandler._contextThe context reading the settings.private final I2PAppContextLocaleWebAppHandler._contextThe router context whose locale is set.private final I2PAppContextShellService._contextThe app context.Methods in net.i2p.router.web with parameters of type I2PAppContextModifier and TypeMethodDescription(package private) static StringGraphListener.createName(I2PAppContext ctx, String wanted) JRobin can only deal with 20 character data source names, so we need to create a unique, munged version from the user/developer-visible name.NavHelper.getClientApps(I2PAppContext ctx) For HomeHelper.(package private) static ServerRouterConsoleRunner.getConsoleServer(I2PAppContext ctx) To get to Jetty.static ContextHandlerCollectionWebAppStarter.getConsoleServer(I2PAppContext ctx) See comments in ConfigClientsHandlerstatic StringMessages.getDisplayLanguage(String langCode, String dflt, I2PAppContext ctx) Return the "display language", e.g.(package private) static StringNewsFeedHelper.getEntries(I2PAppContext ctx, int start, int max, long ageLimit) Get the formatted HTML entries.static NavHelperNavHelper.getInstance(I2PAppContext ctx) Console navigation-bar helper, registered as a client app.static StringConfigUpdateHelper.getNewsURL(I2PAppContext ctx) The URL of the packaged news feed.PluginStarter.getPluginKeys(I2PAppContext ctx) The signing keys from all the plugins.static StringMessages.getString(int n, String s, String p, I2PAppContext ctx) Translate a string picking between the singular and the plural form, as the GNU gettext plural-forms rules require.static StringMessages.getString(String s, Object o, Object o2, I2PAppContext ctx) Translate a string carrying two parameters.static StringMessages.getString(String s, Object o, I2PAppContext ctx) Translate a string with a parameter This is a lot more expensive than getString(s, ctx), so use sparingly.static StringMessages.getString(String key, I2PAppContext ctx) Look up a string in this package's bundle.WebAppConfiguration.getSystemClassPath(I2PAppContext ctx) Convert URL to URI so there's no blocking equals(), not that there's really any hostnames in here, but keep findbugs happy.private static StringPluginStarter.gettext(String s, Object o, I2PAppContext ctx) Translate a string.(package private) static ContextHandlerWebAppStarter.getWebApp(I2PAppContext ctx, String appName) Warning, this will NOT work during shutdown, because the console is already unregistered.static GraphGeneratorGraphGenerator.instance(I2PAppContext ctx) The generator registered with the app manager, which only exists while it is running.static booleanGraphGenerator.isDisabled(I2PAppContext ctx) Whether graph generation is currently switched off.(package private) static booleanRouterConsoleRunner.isSystrayEnabled(I2PAppContext context) Package private for ConfigServiceHandler.static booleanWebAppStarter.isWebAppRunning(I2PAppContext ctx, String appName) Determine if a webapp is running.private static StringPluginStarter.ngettext(String s, String p, int n, I2PAppContext ctx) Translate a string.static PropertiesPluginStarter.pluginProperties(I2PAppContext ctx, String appName) Read the plugin.config file for a single plugin.static booleanPluginStarter.pluginsEnabled(I2PAppContext ctx) Has the user allowed plugins to be started at all?static intConfigUpdateHandler.proxyPort(I2PAppContext ctx) Convenience method for updaters.(package private) static voidGraphGenerator.setDisabled(I2PAppContext ctx) Disable graph generation until restart.static PropertiesRouterConsoleRunner.webAppProperties(I2PAppContext ctx) Webapp enable properties from the router config directory.static FileConfigServiceHandler.wrapperLogFile(I2PAppContext ctx) Does not necessarily exist.Constructors in net.i2p.router.web with parameters of type I2PAppContextModifierConstructorDescriptionGraphRenderer(I2PAppContext ctx, GraphListener lsnr) Binds a renderer to the listener whose RRD it draws.MUST callHostCheckHandler.setListenHosts(Set)afterwards.LocaleWebAppHandler(I2PAppContext ctx, String path, String warPath, File tmpdir, ServletHandler servletHandler) Create handler for localized JSP resolution and Jetty integration.ShellService(I2PAppContext context, ClientAppManager listener, String[] args) Creates a ShellService from command-line args, validating the executable and setting up log files.Uses of I2PAppContext in net.i2p.router.web.helpers
Fields in net.i2p.router.web.helpers declared as I2PAppContextModifier and TypeFieldDescription(package private) I2PAppContextSidebarHelper.ctxGlobal application context.Uses of I2PAppContext in net.i2p.sam
Constructors in net.i2p.sam with parameters of type I2PAppContextModifierConstructorDescriptionSAMBridge(I2PAppContext context, ClientAppManager mgr, String[] args) For ClientApp interface.Uses of I2PAppContext in net.i2p.sam.client
Fields in net.i2p.sam.client declared as I2PAppContextModifier and TypeFieldDescriptionprivate final I2PAppContextSAMStreamSend._contextThe app context.private final I2PAppContextSAMStreamSink._contextThe app context.Constructors in net.i2p.sam.client with parameters of type I2PAppContextModifierConstructorDescriptionBinds the log this handler reports unhandled messages to.SAMReader(I2PAppContext context, InputStream samIn, SAMReader.SAMClientEventListener listener) Reads a SAM protocol stream and passes each message to a listener.SAMStreamSend(I2PAppContext ctx, String samHost, String samPort, String destFile, String dataFile) Holds the command line arguments for one stream send.SAMStreamSink(I2PAppContext ctx, String samHost, String samPort, String destFile, String sinkDir) Holds the SAM bridge connection that received streams are written from.Creates the handler that tracks stream closes reported by the bridge.SinkEventHandler(I2PAppContext ctx, OutputStream out) Remember the bridge output stream for the event replies.SinkEventHandler2(I2PAppContext ctx, InputStream in, OutputStream out) SinkEventHandler2.Uses of I2PAppContext in net.i2p.servlet
Fields in net.i2p.servlet declared as I2PAppContextUses of I2PAppContext in net.i2p.stat
Fields in net.i2p.stat declared as I2PAppContextModifier and TypeFieldDescriptionprivate final I2PAppContextRateSampleDelivery._contextThe app context.private final I2PAppContextStatManager._contextThe context whose stats are managed.Constructors in net.i2p.stat with parameters of type I2PAppContextModifierConstructorDescription(package private)RateSampleDelivery(I2PAppContext context) Create a delivery with the default pending-sample capacity.(package private)RateSampleDelivery(I2PAppContext context, int capacity) Create a delivery that retains at most the given number of pending samples.StatManager(I2PAppContext context) The stat manager should only be constructed and accessed through the application context.Uses of I2PAppContext in net.i2p.util
Fields in net.i2p.util declared as I2PAppContextModifier and TypeFieldDescriptionprotected final I2PAppContextClock._contextThe I2P application context.protected final I2PAppContextEepGet._contextI2P application context for configuration, logging, and random number generation.private final I2PAppContextI2PSSLSocketFactory._contextThe app context.private final I2PAppContextLogManager._contextThe app context.private final I2PAppContextPasswordManager._contextUsed for the log and for reading and writing the password file.protected final I2PAppContextRandomSource._contextThe context this generator was created for.private final I2PAppContextSimpleTimer2._contextThe app context, for the clock and stats.private final I2PAppContextSyntheticREDQueue._contextThe app context.private static final I2PAppContextSystemVersion._ctxThe global app context, for the config.private final I2PAppContextTranslateReader._ctxThe app context.private final I2PAppContextDNSOverHTTPS.ctxThe app context, for the clock and stats.private final I2PAppContextTempDirScanner.ctxContext whose temp directory is scanned.Methods in net.i2p.util that return I2PAppContextModifier and TypeMethodDescription(package private) I2PAppContextLogManager.getContext()Convenience method for LogRecordFormatter.Methods in net.i2p.util with parameters of type I2PAppContextModifier and TypeMethodDescriptionprivate static voidI2PSSLSocketFactory.addCountries(I2PAppContext ctx, List<String> tlds) Read in the country file and add all TLDs to the list.static StringTranslate.getCountry(I2PAppContext ctx) Two-letter upper case or "".private static PublicSuffixMatcherI2PSSLSocketFactory.getDefaultMatcher(I2PAppContext ctx) From ApachePublicSuffixMatcherLoader.getDefault()static StringTranslate.getDisplayLanguage(String langCode, String dflt, I2PAppContext ctx, String bun) Return the "display language", e.g.static StringTranslate.getLanguage(I2PAppContext ctx) Two- or three-letter lower case.private static StringLogRecordFormatter.getPriority(LogRecord rec, I2PAppContext ctx) Return the localized priority label.static StringTranslate.getString(int n, String s, String p, I2PAppContext ctx, String bun) Use GNU ngettext For .po file format see http://www.gnu.org/software/gettext/manual/gettext.html.gz#Translating-plural-formsstatic StringFor {0} and {1}.static StringTranslate.getString(String s, Object o, I2PAppContext ctx, String bun) Translate a string with a parameter This is a lot more expensive than getString(s, ctx), so use sparingly.static StringTranslate.getString(String key, I2PAppContext ctx, String bun) Look up a single translation key in a resource bundle.static StringTranslate.getString(String s, I2PAppContext ctx, String bun, Object... oArray) Varargs form, accepting any number of values substituted for the {0}, {1}, ...static TimeZoneSystemVersion.getSystemTimeZone(I2PAppContext ctx) The system's time zone, which is probably different from the JVM time zone, because Router changes the JVM default to GMT.private static SSLSocketFactoryI2PSSLSocketFactory.initSSLContext(I2PAppContext context, boolean loadSystemCerts, String relativeCertPath) Loads certs from the ~/.i2p/certificates/ and $I2P/certificates/ directories, or from the absolute path given.static booleanTranslate.isRTL(I2PAppContext ctx) Are we configured for a right-to-left language?ByteArrayStream.sign(I2PAppContext ctx, SigningPrivateKey signingKey) Signs the written data.static voidI2PSSLSocketFactory.verifyHostname(I2PAppContext ctx, SSLSocket socket, String host) Validate the hostname.booleanByteArrayStream.verifySignature(I2PAppContext ctx, Signature signature, SigningPublicKey verifyingKey) Verifies the signature of the written data.Constructors in net.i2p.util with parameters of type I2PAppContextModifierConstructorDescriptionClock(I2PAppContext context) Create a new Clock with the given context, detecting system clock validity.DNSOverHTTPS(I2PAppContext context) Create a DNSOverHTTPS instance.DNSOverHTTPS(I2PAppContext context, SSLEepGet.SSLState sslState) Create a DNSOverHTTPS instance.EepGet(I2PAppContext ctx, boolean shouldProxy, String proxyHost, int proxyPort, int numRetries, long minSize, long maxSize, String outputFile, OutputStream outputStream, String url, boolean allowCaching, String etag, String postData) Creates a new EepGet instance with size limits, output stream, and POST data.EepGet(I2PAppContext ctx, boolean shouldProxy, String proxyHost, int proxyPort, int numRetries, long minSize, long maxSize, String outputFile, OutputStream outputStream, String url, boolean allowCaching, String etag, String lastModified, String postData) Full constructor for EepGet with all parameters.EepGet(I2PAppContext ctx, boolean shouldProxy, String proxyHost, int proxyPort, int numRetries, String outputFile, String url) Creates a new EepGet instance with explicit proxy control, defaulting to allow caching.EepGet(I2PAppContext ctx, boolean shouldProxy, String proxyHost, int proxyPort, int numRetries, String outputFile, String url, boolean allowCaching, String etag) Creates a new EepGet instance with conditional fetch via ETag.EepGet(I2PAppContext ctx, boolean shouldProxy, String proxyHost, int proxyPort, int numRetries, String outputFile, String url, boolean allowCaching, String etag, String lastModified) Creates a new EepGet instance with conditional fetch via ETag and Last-Modified.EepGet(I2PAppContext ctx, boolean shouldProxy, String proxyHost, int proxyPort, int numRetries, String outputFile, String url, String postData) Creates a new EepGet instance with POST data support.EepGet(I2PAppContext ctx, int numRetries, String outputFile, String url) Creates a new EepGet instance without a proxy, defaulting to allow caching.EepGet(I2PAppContext ctx, int numRetries, String outputFile, String url, boolean allowCaching) Creates a new EepGet instance without a proxy, with configurable caching.EepGet(I2PAppContext ctx, String proxyHost, int proxyPort, int numRetries, String outputFile, String url) Creates a new EepGet instance with proxy support, defaulting to allow caching.EepGet(I2PAppContext ctx, String proxyHost, int proxyPort, int numRetries, String outputFile, String url, boolean allowCaching) Creates a new EepGet instance with proxy support and configurable caching.EepHead(I2PAppContext ctx, String proxyHost, int proxyPort, int numRetries, String url) Create a new EepHead to fetch HTTP response headers from the given URL.EepPost(I2PAppContext ctx, String proxyHost, int proxyPort, int numRetries, String outputFile, String url) Constructor for a POST session.FortunaRandomSource(I2PAppContext context) May block up to 10 seconds or forever.I2PSSLSocketFactory(I2PAppContext context, boolean loadSystemCerts, String relativeCertPath) Create a socket factory with the given context and certificate path.LogConsoleBuffer(I2PAppContext context) Uses default limit fromLogManager.LogManager(I2PAppContext context) Create the log manager for the given context.PartialEepGet(I2PAppContext ctx, String proxyHost, int proxyPort, OutputStream outputStream, String url, long size) Instantiate an EepGet that will fetch exactly size bytes when fetch() is called.PartialEepGet(I2PAppContext ctx, String proxyHost, int proxyPort, OutputStream outputStream, String url, long size, int numRetries) Instantiate an EepGet that will fetch exactly size bytes when fetch() is called.Remember the app context so lookups reach the property store.PortMapper(I2PAppContext context) Create a port mapper.RandomSource(I2PAppContext context) Deprecated - do not instantiate this directly, as you won't get the good one (Fortuna).SimpleTimer2(I2PAppContext context) To be instantiated by the context.SimpleTimer2(I2PAppContext context, String name) To be instantiated by the context.protectedSimpleTimer2(I2PAppContext context, String name, boolean prestartAllThreads) To be instantiated by the context.SSLEepGet(I2PAppContext ctx, OutputStream outputStream, String url) A new SSLEepGet with a new SSLState.SSLEepGet(I2PAppContext ctx, OutputStream outputStream, String url, long maxSize, SSLEepGet.SSLState state) Create an SSLEepGet that writes to a stream, using an existing SSL state, limited to a maximum response size.SSLEepGet(I2PAppContext ctx, OutputStream outputStream, String url, SSLEepGet.SSLState state) Create an SSLEepGet that writes to a stream, using an existing SSL state.privateSSLEepGet(I2PAppContext ctx, String outputFile, OutputStream outputStream, String url, long maxSize, SSLEepGet.SSLState state) Output file and output stream: one null, one non-null.SSLEepGet(I2PAppContext ctx, String outputFile, String url) A new SSLEepGet with a new SSLState.SSLEepGet(I2PAppContext ctx, String outputFile, String url, SSLEepGet.SSLState state) Create an SSLEepGet that writes to a file, using an existing SSL state.SSLEepGet(I2PAppContext ctx, SSLEepGet.ProxyType type, String proxyHost, int proxyPort, OutputStream outputStream, String url) Use a proxy.SSLEepGet(I2PAppContext ctx, SSLEepGet.ProxyType type, String proxyHost, int proxyPort, OutputStream outputStream, String url, SSLEepGet.SSLState state) Use a proxy.SSLEepGet(I2PAppContext ctx, SSLEepGet.ProxyType type, String proxyHost, int proxyPort, String outputFile, String url) Use a proxy.SSLEepGet(I2PAppContext ctx, SSLEepGet.ProxyType type, String proxyHost, int proxyPort, String outputFile, String url, SSLEepGet.SSLState state) Use a proxy.SyntheticREDQueue(I2PAppContext ctx, int bwBps) With default queue size thresholds based on bandwidth.SyntheticREDQueue(I2PAppContext ctx, int bwBps, int minThB, int maxThB) With the given bandwidth and queue size thresholds.TempDirScanner(I2PAppContext context) Schedules itself.TranslateReader(I2PAppContext ctx, String bundle, InputStream in) May be null for tagging only.TranslateReader(I2PAppContext ctx, String bundle, Reader in) May be null for tagging only.Uses of I2PAppContext in org.cybergarage.util
Methods in org.cybergarage.util with parameters of type I2PAppContextModifier and TypeMethodDescriptionstatic voidDebug.initialize(I2PAppContext ctx) Initializes debug system with I2P application context.Uses of I2PAppContext in org.klomp.snark
Fields in org.klomp.snark declared as I2PAppContextModifier and TypeFieldDescriptionprivate final I2PAppContextBandwidthManager._contextThe context the limiter runs in.private final I2PAppContextI2PSnarkUtil._contextThe app context.private final I2PAppContextSnarkManager._contextThe application context.private final I2PAppContextTorrentDest._contextThe context the destination runs in.private final I2PAppContextUDPTrackerClient._contextThe app context.private final I2PAppContextUpdateHandler._contextThe context the update manager runs in.private final I2PAppContextUpdateRunner._contextThe app context.Methods in org.klomp.snark that return I2PAppContextMethods in org.klomp.snark with parameters of type I2PAppContextModifier and TypeMethodDescription(package private) static intStorage.getVerifyThreads(I2PAppContext ctx) Worker threads for a parallel piece verification: the i2psnark.verifyThreads property when set, otherwise scaled to the CPU count (at least 4).Constructors in org.klomp.snark with parameters of type I2PAppContextModifierConstructorDescription(package private)BandwidthManager(I2PAppContext ctx, int upLimit, int downLimit) Create the bandwidth manager.CheckEvent(I2PAppContext ctx, PeerCheckerTask task) Wrapper to reschedule the checker task on each fire.Create a utility instance bound to the given context, with the default base name and no disconnect listener.I2PSnarkUtil(I2PAppContext ctx, String baseName, I2PSocketManager.DisconnectListener discon) Create a utility instance bound to the given context.For embedded.SnarkManager(I2PAppContext ctx, String ctxPath, String ctxName) For webapp.TorrentDest(I2PAppContext ctx, String key, int poolIndex, int poolNum, I2PSocketManager mgr, I2PServerSocket serverSocket) Assign a torrent to this destination.UDPTrackerClient(I2PAppContext ctx, I2PSession session, I2PSnarkUtil util) Create a client bound to one torrent's session, listening on the port just belowTrackerClient.PORTso it never collides with the HTTP tracker client.UpdateHandler(I2PAppContext ctx, UpdateManager umgr, SnarkManager smgr) Wire an updater to the router's update manager and the torrent client.UpdateRunner(I2PAppContext ctx, UpdateManager umgr, SnarkManager smgr, UpdateType type, List<URI> uris, String newVersion) Update runner.Uses of I2PAppContext in org.klomp.snark.dht
Fields in org.klomp.snark.dht declared as I2PAppContextModifier and TypeFieldDescriptionprivate final I2PAppContextDHTNodes._contextThe app context.private final I2PAppContextDHTTracker._contextThe app context.private final I2PAppContextKRPC._contextThe app context.private final I2PAppContextKBTrimmer._ctxSupplies the clock and the log.Constructors in org.klomp.snark.dht with parameters of type I2PAppContextModifierConstructorDescriptionDHTNodes(I2PAppContext ctx, NID me) Create a new DHTNodes instance.(package private)DHTTracker(I2PAppContext ctx) Create a tracker for the given context.(package private)DHTTracker(I2PAppContext ctx, long filterCacheTime) Construct a tracker that caches each built bloom filter for the default reuse interval.KBTrimmer(I2PAppContext ctx, int max) Creates a new bucket trimmer with the specified maximum bucket size.KRPC(I2PAppContext ctx, String baseName, I2PSession session) Create the DHT instance.protectedKRPC(I2PAppContext ctx, String baseName, I2PSession session, KRPC shared) Create the DHT instance sharing state.MsgID(I2PAppContext ctx) Create an outgoing message ID with a random value.Token(I2PAppContext ctx) Creates a new outgoing token for sending to remote peers.Token(I2PAppContext ctx, byte[] data) Creates an incoming token received from a remote DHT node.TorrentKRPC(I2PAppContext ctx, KRPC shared, I2PSession session, Collection<InfoHash> ihs) Create a DHT instance on a torrent's transient destination.Uses of I2PAppContext in org.klomp.snark.standalone
Fields in org.klomp.snark.standalone declared as I2PAppContextModifier and TypeFieldDescriptionprivate final I2PAppContextHostCheckHandler._contextSupplies the configuration and the log.private final I2PAppContextRunStandalone._contextThe context the standalone app runs in.Methods in org.klomp.snark.standalone with parameters of type I2PAppContextModifier and TypeMethodDescriptionstatic StringConfigUIHelper.getLangSettings(I2PAppContext ctx) Generates HTML select dropdown for language selection in I2PSnark standalone mode.Constructors in org.klomp.snark.standalone with parameters of type I2PAppContextModifierConstructorDescriptionCreates a new HostCheckHandler with the specified application context.Uses of I2PAppContext in org.klomp.snark.web
Fields in org.klomp.snark.web declared as I2PAppContextModifier and TypeFieldDescriptionprotected final I2PAppContextBasicServlet._contextThe global application context, transient so the servlet stays serializable.private final I2PAppContextFetchAndAdd._ctxThe app context.Methods in org.klomp.snark.web that return I2PAppContextModifier and TypeMethodDescription(package private) I2PAppContextI2PSnarkServlet.context()The I2P context this servlet runs in.Constructors in org.klomp.snark.web with parameters of type I2PAppContextModifierConstructorDescriptionFetchAndAdd(I2PAppContext ctx, SnarkManager mgr, String url, File dataDir) Create the downloader; the caller should call _mgr.addDownloader(this), which starts things off.