Class TrackerStatus
java.lang.Object
com.biglybt.core.tracker.client.impl.bt.TrackerStatus
One TrackerStatus object handles scrape functionality for all torrents
on one tracker.
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final AllTrackersManager.AllTrackersprivate final AllTrackersManager.AllTrackersTrackerprivate byteprivate booleanprivate booleanprivate final TrackerCheckerprivate booleanprivate booleanprivate static final intprivate static final intprivate static final intWhen scraping a single hash, also scrape other hashes that are going to be scraped within this range.private final HashMap<HashWrapper, TRTrackerScraperResponseImpl> key = Torrent hash.protected final AEMonitorprivate booleanprivate static final Listprivate static final LogIDsprivate static final intprivate final AtomicIntegerprivate intprivate final TRTrackerScraperImplonly needed to notify listenersprivate Stringprivate static final Stringprivate static final Stringprivate static booleanprivate static final ThreadPoolprivate final URLprivate static booleanprivate static boolean -
Constructor Summary
ConstructorsConstructorDescriptionTrackerStatus(TrackerChecker _checker, TRTrackerScraperImpl _scraper, URL _tracker_url) -
Method Summary
Modifier and TypeMethodDescriptionprotected TRTrackerScraperResponseImpladdHash(HashWrapper hash) private StringformatScrapeErrorMessage(URL reqURL, String msg) protected TRTrackerScraperResponseImplgetHashData(HashWrapper hash) protected Mapprotected AEMonitorintprotected Stringbooleanprotected URLprotected StringgetURLParam(String url, String param) protected booleanprotected voidremoveHash(HashWrapper hash) protected voidrunScrapes(ArrayList<TRTrackerScraperResponseImpl> responses, boolean force, boolean async) protected voidrunScrapesSupport(ArrayList<TRTrackerScraperResponseImpl> allResponses, boolean force) private URLscrapeHTTP(List<HashWrapper> hashesInQuery, URL[] _reqUrl, ByteArrayOutputStream message) private URLscrapeHTTPSupport(URL[] _reqUrl, byte[] example_hash, Proxy proxy, ByteArrayOutputStream message) protected voidscrapeReceived(TRTrackerScraperResponse response) protected booleanscrapeUDP(URL reqUrl, ByteArrayOutputStream message, List<HashWrapper> hashesInQuery, boolean do_auth_test) private voidsetAllError(URL reqURL, List<TRTrackerScraperResponseImpl> responses, Exception e) protected voidupdateSingleHash(HashWrapper hash, boolean force) protected voidupdateSingleHash(HashWrapper hash, boolean force, boolean async)
-
Field Details
-
LOGID
-
SS
- See Also:
-
SSErr
- See Also:
-
FAULTY_SCRAPE_RETRY_INTERVAL
private static final int FAULTY_SCRAPE_RETRY_INTERVAL- See Also:
-
NOHASH_RETRY_INTERVAL
private static final int NOHASH_RETRY_INTERVAL- See Also:
-
GROUP_SCRAPES_MS
private static final int GROUP_SCRAPES_MSWhen scraping a single hash, also scrape other hashes that are going to be scraped within this range.- See Also:
-
GROUP_SCRAPES_LIMIT
private static final int GROUP_SCRAPES_LIMIT- See Also:
-
tcpScrapeEnabled
private static boolean tcpScrapeEnabled -
udpScrapeEnabled
private static boolean udpScrapeEnabled -
udpProbeEnabled
private static boolean udpProbeEnabled -
all_trackers
-
autoUDPscrapeEvery
private byte autoUDPscrapeEvery -
scrapeCount
private int scrapeCount -
logged_invalid_urls
-
thread_pool
-
tracker_url
-
all_trackers_tracker
-
az_tracker
private boolean az_tracker -
enable_sni_hack
private boolean enable_sni_hack -
internal_error_hack
private boolean internal_error_hack -
dh_hack
private boolean dh_hack -
scrapeURL
-
hashes
key = Torrent hash. values = TRTrackerScraperResponseImpl -
scraper
only needed to notify listeners -
bSingleHashScrapes
private boolean bSingleHashScrapes -
hashes_mon
-
checker
-
numActiveScrapes
-
-
Constructor Details
-
TrackerStatus
-
-
Method Details
-
isTrackerScrapeUrlValid
protected boolean isTrackerScrapeUrlValid() -
getHashData
-
updateSingleHash
-
updateSingleHash
-
runScrapes
protected void runScrapes(ArrayList<TRTrackerScraperResponseImpl> responses, boolean force, boolean async) -
runScrapesSupport
protected void runScrapesSupport(ArrayList<TRTrackerScraperResponseImpl> allResponses, boolean force) -
formatScrapeErrorMessage
-
setAllError
-
scrapeHTTP
private URL scrapeHTTP(List<HashWrapper> hashesInQuery, URL[] _reqUrl, ByteArrayOutputStream message) throws Exception - Throws:
Exception
-
scrapeHTTPSupport
private URL scrapeHTTPSupport(URL[] _reqUrl, byte[] example_hash, Proxy proxy, ByteArrayOutputStream message) throws IOException - Throws:
IOException
-
scrapeUDP
protected boolean scrapeUDP(URL reqUrl, ByteArrayOutputStream message, List<HashWrapper> hashesInQuery, boolean do_auth_test) throws Throwable - Throws:
Throwable
-
getURLParam
-
addHash
-
removeHash
-
getTrackerURL
-
getHashes
-
getHashesMonitor
-
scrapeReceived
-
getSupportsMultipeHashScrapes
public boolean getSupportsMultipeHashScrapes() -
getString
-
getNumActiveScrapes
public int getNumActiveScrapes()
-