Class TRTrackerAnnouncerImpl
java.lang.Object
com.biglybt.core.tracker.client.impl.TRTrackerAnnouncerImpl
- All Implemented Interfaces:
TRTrackerAnnouncer
- Direct Known Subclasses:
TRTrackerAnnouncerMuxer
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate int
private static final String
private static final int
private static final int
private static final int
private static final int
protected final ListenerManager<TRTrackerAnnouncerListener>
static final LogIDs
private final byte[]
private final long
private static AtomicLong
private final TOTorrent
private final String
(package private) final Map<String,
TRTrackerAnnouncerResponsePeer> private final AEMonitor
private final int
Fields inherited from interface com.biglybt.core.tracker.client.TRTrackerAnnouncer
AZ_TRACKER_VERSION_1, AZ_TRACKER_VERSION_2, AZ_TRACKER_VERSION_3, AZ_TRACKER_VERSION_CURRENT, DEFAULT_PEERS_TO_CACHE, REFRESH_MINIMUM_SECS, TS_COMPLETED, TS_DOWNLOADING, TS_INITIALISED, TS_STOPPED
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
protected void
private static String
protected Map
protected abstract int
byte[]
protected TRTrackerAnnouncerResponsePeer[]
getPeersFromCache
(int num_want) returns a Map containing "bencoded" entries representing a cache of tracker responses.protected int
importTrackerCache
(Map map) protected void
informResponse
(TRTrackerAnnouncerHelper helper, TRTrackerAnnouncerRequest request, TRTrackerAnnouncerResponse response) protected void
static Map
mergeResponseCache
(Map map1, Map map2) void
removeFromTrackerResponseCache
(String ip, int tcp_port) remove a specific entry from the cache if presentvoid
void
sets the response cache.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface com.biglybt.core.tracker.client.TRTrackerAnnouncer
clearIPOverride, complete, destroy, generateEvidence, getBestAnnouncer, getLastResponse, getLastUpdateTime, getStatus, getStatusString, getTimeUntilNextUpdate, getTrackerPeerSource, getTrackerURL, isManual, refreshListeners, resetTrackerUrl, setAnnounceDataProvider, setAnnounceResult, setIPOverride, setRefreshDelayOverrides, setTrackerURL, stop, update
-
Field Details
-
LOGID
-
LDT_TRACKER_RESPONSE
private static final int LDT_TRACKER_RESPONSE- See Also:
-
LDT_URL_CHANGED
private static final int LDT_URL_CHANGED- See Also:
-
LDT_URL_REFRESH
private static final int LDT_URL_REFRESH- See Also:
-
chars
- See Also:
-
key_id_length
private static final int key_id_length- See Also:
-
session_id_next
-
listeners
-
tracker_peer_cache
-
tracker_peer_cache_mon
-
cache_peers_used
private int cache_peers_used -
torrent
-
peer_id
private final byte[] peer_id -
session_id
private final long session_id -
tracker_key
-
udp_key
private final int udp_key
-
-
Constructor Details
-
TRTrackerAnnouncerImpl
- Throws:
TRTrackerAnnouncerException
-
-
Method Details
-
createKeyID
-
getTorrent
- Specified by:
getTorrent
in interfaceTRTrackerAnnouncer
-
getHelper
-
getPeerId
public byte[] getPeerId()- Specified by:
getPeerId
in interfaceTRTrackerAnnouncer
-
getTrackerResponseCache
Description copied from interface:TRTrackerAnnouncer
returns a Map containing "bencoded" entries representing a cache of tracker responses.- Specified by:
getTrackerResponseCache
in interfaceTRTrackerAnnouncer
- Returns:
-
setTrackerResponseCache
Description copied from interface:TRTrackerAnnouncer
sets the response cache. This may be used by the tracker client to return peer details when the tracker is offline- Specified by:
setTrackerResponseCache
in interfaceTRTrackerAnnouncer
-
exportTrackerCache
-
importTrackerCache
-
addToTrackerCache
-
removeFromTrackerResponseCache
Description copied from interface:TRTrackerAnnouncer
remove a specific entry from the cache if present- Specified by:
removeFromTrackerResponseCache
in interfaceTRTrackerAnnouncer
-
mergeResponseCache
-
getPeerCacheLimit
protected abstract int getPeerCacheLimit() -
getPeersFromCache
-
getCacheTrackerPeerSource
- Specified by:
getCacheTrackerPeerSource
in interfaceTRTrackerAnnouncer
-
informResponse
protected void informResponse(TRTrackerAnnouncerHelper helper, TRTrackerAnnouncerRequest request, TRTrackerAnnouncerResponse response) -
informURLRefresh
protected void informURLRefresh() -
addListener
- Specified by:
addListener
in interfaceTRTrackerAnnouncer
-
removeListener
- Specified by:
removeListener
in interfaceTRTrackerAnnouncer
-