tribler.core.torrent_checker.tracker_manager

Attributes

MAX_TRACKER_FAILURES

TRACKER_RETRY_INTERVAL

Classes

TrackerManager

A manager for tracker info in the database.

Module Contents

tribler.core.torrent_checker.tracker_manager.MAX_TRACKER_FAILURES = 5
tribler.core.torrent_checker.tracker_manager.TRACKER_RETRY_INTERVAL = 60
class tribler.core.torrent_checker.tracker_manager.TrackerManager(metadata_store: tribler.core.database.store.MetadataStore, state_dir: pathlib.Path | None = None)

A manager for tracker info in the database.

_logger
state_dir = None
TrackerState
blacklist: list[str] = []
load_blacklist() None

Load the tracker blacklist from tracker_blacklist.txt in the session state directory.

Entries are newline separated and are supposed to be sanitized.

get_tracker_info(tracker_url: str) dict[str, str | float] | None

Gets the tracker information with the given tracker URL.

Parameters:

tracker_url – The given tracker URL.

Returns:

The tracker info dict if exists, None otherwise.

add_tracker(tracker_url: str) None

Adds a new tracker into the tracker info dict and the database.

Parameters:

tracker_url – The new tracker URL to be added.

remove_tracker(tracker_url: str) None

Remove a given tracker from the database. URL is sanitized first and removed from the database. If the URL is ill formed then try removing the non- sanitized version.

Parameters:

tracker_url – The URL of the tracker to be deleted.

update_tracker_info(tracker_url: str, is_successful: bool = True) None

Updates a tracker information.

Parameters:
  • tracker_url – The given tracker_url.

  • is_successful – If the check was successful.

get_next_tracker() tribler.core.database.orm_bindings.tracker_state.TrackerState | None

Gets the next tracker.

Returns:

The next tracker for torrent-checking.