## Package net.i2p.util

Interface Summary
Clock.ClockUpdateListener
EepGet.StatusListener
EventDispatcher: Event dispatching interface.
I2PThread.OOMEventListener
SimpleTimer.TimedEvent: Simple interface for events to be queued up and notified on expiration

Class Summary
BufferedRandomSource: Allocate data out of a large buffer of data, rather than the PRNG's (likely) small buffer to reduce the frequency of prng recalcs (though the recalcs are now more time consuming).
ByteCache: Cache the objects frequently used to reduce memory churn.
CachingByteArrayOutputStream: simple extension to the baos to try to use a ByteCache for its internal buffer.
Clock: Alternate location for determining the time which takes into account an offset.
Copy: Usage: Copy from to
DecayingBloomFilter: Series of bloom filters which decay over time, allowing their continual use for time sensitive data.
Delete: Usage: Delete name
EepGet: EepGet [-p localhost:4444] [-n #retries] [-o outputFile] [-m markSize lineLen] url
EepGetScheduler
EepPost: Simple helper for uploading files and such via HTTP POST (rfc 1867)
EventDispatcherImpl: An implementation of the EventDispatcher interface.
Exec: Usage: Exec dir command [args ...]
FileUtil: General helper methods for messing with files
FortunaRandomSource: Wrapper around GNU-Crypto's Fortuna PRNG.
HexDump: Hexdump class (well, it's actually a namespace with some functions, but let's stick with java terminology :-).
HTTPSendData: Simple helper class to submit data via HTTP Post
I2PThread: In case its useful later...
Log: Wrapper class for whatever logging system I2P uses.
LogConsoleBuffer: Offer a glimpse into the last few console messages generated
LogLimit: Defines the log limit for a particular set of logs
LogManager: Manages the logging system, loading (and reloading) the configuration file, coordinating the log limits, and storing the set of log records pending.
LogRecord: Frisbee
LogRecordFormatter: Render a log record according to the log manager's settings
LogWriter: Log writer thread that pulls log records from the LogManager, writes them to the current logfile, and rotates the logs as necessary.
LookaheadInputStream: Simple lookahead buffer to keep the last K bytes in reserve, configured to easily be reused.
NativeBigInteger: BigInteger that takes advantage of the jbigi library for the modPow operation, which accounts for a massive segment of the processing cost of asymmetric crypto.
OrderedProperties: Properties map that has its keySet ordered consistently (via the key's lexicographical ordering).
PooledRandomSource: Maintain a set of PRNGs to feed the apps
RandomSource: Singleton for whatever PRNG i2p uses.
ResettableGZIPInputStream: GZIP implementation per RFC 1952, reusing java's standard CRC32 and Inflater and InflaterInputStream implementations.
ResettableGZIPOutputStream: GZIP implementation per RFC 1952, reusing java's standard CRC32 and Deflater implementations.
ReusableGZIPInputStream: Provide a cache of reusable GZIP streams, each handling up to 32KB without expansion.
ReusableGZIPOutputStream: Provide a cache of reusable GZIP streams, each handling up to 32KB without expansion.
ShellCommand: Passes a command to the OS shell for execution and manages the input and output.
SimpleTimer: Simple event scheduler - toss an event on the queue and it gets fired at the appropriate time.