Packages that use org.klomp.snark
Package
Description
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.
The I2PSnark web interface (i2psnark.war): servlets and helpers for torrent management, file browsing and configuration.
- Classes in org.klomp.snark used by org.klomp.snarkClassDescriptionSelf-contained bandwidth sampler for the snark screen log graph.Bandwidth and bandwidth limits.Bandwidth and bandwidth limits.Container of a byte array representing set and unset bits for torrent piece availability.One impersonatable client: peer ID prefix plus the matching tracker User-Agent and extension handshake "v" strings.Callback for Snark events.Accepts incoming I2P connections and routes them to the appropriate PeerAcceptor.Accept loop for a destination, serving every torrent pooled on it, routed by the info hash in the handshake.Callback interface for monitoring PeerCoordinator state changes.Callback used to fetch data.Tracks the pieces a peer said it no longer has (BEP 54 dont_have), so the piece is not re-requested from that peer even if it re-announces HAVE, until the remembered state expires.I2P-specific utilities and context management for I2PSnark.Simple state for the download of the metainfo, shared between Peer and ExtensionHandler.Represents a BitTorrent protocol message for peer communication.Holds all information extracted from a torrent file.Represents a piece of a torrent being downloaded, storing partial data either on the heap or in a temporary file if the piece is large.Represents a peer in the BitTorrent network, managing all public information and communication with that peer.Accepts incoming connections from peers.TimerTask that checks for good/bad up/downloader.Handles incoming BitTorrent protocol messages from a peer.
This class runs in a separate thread to continuously read and parse incoming messages, delegating them to the appropriate PeerState handlers.Manages outgoing BitTorrent protocol messages to a peer.
This class maintains a queue of outgoing messages and handles bandwidth limiting, message prioritization, and reliable delivery to the peer.Coordinates peer activities for a single torrent including upload/download management, peer selection, piece distribution, and bandwidth allocation.Run the PeerCheckerTask via the SimpleTimer2 executors.Thread-safe collection for managing PeerCoordinator instances across multiple torrents.Store the address information about a peer.Listener for Peer events.Manages the state and protocol logic for a BitTorrent peer connection.
This class tracks peer interest/choking status, piece availability, request queues, and handles all BitTorrent protocol message processing.Represents a torrent piece and tracks which peers have it and are requesting it.Holds all information needed for a partial piece request.Callback interface for the end of the shutdown sequence.Main Snark program startup class.A unique exception class to blame the router that can be caught by SnarkManager.Central manager for multiple torrent downloads and the I2PSnark application.A cached per-torrent config.Result of a DHT metadata lookup — name plus combined size of data files.Storage manages torrent data files on disk for I2PSnark.A single file in a torrent.Classified storage failures.Callback interface for monitoring Storage state changes and progress.A structure for torrent creation filters.Bundles the transient I2P destination, session, server socket, DHT instance, and UDP tracker client for one torrent or for a pool of torrents, so that all of a torrent's network activity goes out through its own identity.Represents a known BitTorrent tracker with its configuration and capabilities.Handles communication with BitTorrent trackers and DHT to discover new peers.One tracker's URL and per-tracker state.The data structure for the tracker response.One of these for all trackers and info hashes.State of the connection id for one tracker.A tracker host and port.Callback for replies.One UDP tracker and its connection state.Represents a response from a UDP tracker.
This class encapsulates the tracker's response including peer lists, interval information, and any error messages.State of one outstanding tracker request.Handles the request to update the router by firing up a magnet. - Classes in org.klomp.snark used by org.klomp.snark.webClassDescriptionCallback interface for monitoring PeerCoordinator state changes.Holds all information extracted from a torrent file.Represents a peer in the BitTorrent network, managing all public information and communication with that peer.Callback interface for the end of the shutdown sequence.Main Snark program startup class.Central manager for multiple torrent downloads and the I2PSnark application.Storage manages torrent data files on disk for I2PSnark.Callback interface for monitoring Storage state changes and progress.A structure for torrent creation filters.Represents a known BitTorrent tracker with its configuration and capabilities.