Package org.klomp.snark

Interface Summary
CoordinatorListener Callback used when some peer changes state.
DataLoader Callback used to fetch data
PeerListener Listener for Peer events.
ShutdownListener Callback for end of shutdown sequence.
Snark.CompleteListener  
StorageListener Callback used when Storage changes.
 

Class Summary
BitField Container of a byte array representing set and unset bits.
BWLimits Connect via I2CP and ask the router the bandwidth limits.
ConnectionAcceptor Accepts connections on a TCP port and routes them to sub-acceptors.
ExtensionHandler REF: BEP 10 Extension Protocol
I2PSnarkUtil I2P specific helpers for I2PSnark We use this class as a sort of context for i2psnark so we can run multiple instances of single Snarks (but not multiple SnarkManagers, it is still static)
MagnetState Simple state for the download of the metainfo, shared between Peer and ExtensionHandler.
Message Used to queue outgoing connections sendMessage() should be used to translate them to wire format.
MetaInfo Note: this class is buggy, as it doesn't propogate custom meta fields into the bencoded info data, and from there to the info_hash.
PartialPiece Store the received data either on the heap or in a temp file.
Peer  
PeerAcceptor Accepts incomming connections from peers.
PeerCheckerTask TimerTask that checks for good/bad up/downloader.
PeerConnectionIn  
PeerConnectionOut  
PeerCoordinator Coordinates what peer does what.
PeerCoordinatorSet Hmm, any guesses as to what this is? Used by the multitorrent functionality in the PeerAcceptor to pick the right PeerCoordinator to accept the con for.
PeerID Store the address information about a peer.
PeerMonitorTask TimerTask that monitors the peers and total up/download speeds.
PeerState  
Piece This class is used solely by PeerCoordinator.
Request Holds all information needed for a partial piece request.
Snark Main Snark program startup class.
SnarkManager Manage multiple snarks
SnarkShutdown Deprecated. unused
StaticSnark Main snark startup class for staticly linking with gcj.
Storage Maintains pieces on disk.
Tracker A structure for known trackers
TrackerClient Informs metainfo tracker of events and gets new peers for peer coordinator.
TrackerInfo The data structure for the tracker response.
 

Exception Summary
PeerAcceptor.ProtocolException A unique exception so we can tell the ConnectionAcceptor about non-BT connections