lt_rs/alerts/implementations/
tracker_announce.rs

1use crate::alerts::TrackerAnnounceAlert;
2use crate::ffi::alerts::tracker_announce::ffi::{
3    tracker_announce_alert_get_event, tracker_announce_alert_get_version,
4};
5use crate::torrent_handle::TorrentHandle;
6
7impl TrackerAnnounceAlert {
8    #[inline(always)]
9    pub fn handle(&self) -> TorrentHandle {
10        self.as_torrent_alert().handle()
11    }
12
13    #[inline(always)]
14    pub fn torrent_name<'a>(&'a self) -> &'a str {
15        self.as_torrent_alert().torrent_name()
16    }
17
18    #[inline(always)]
19    pub fn message(&self) -> String {
20        self.as_torrent_alert().message()
21    }
22
23    #[inline(always)]
24    pub fn tracker_url<'a>(&'a self) -> &'a str {
25        self.as_tracker_alert().tracker_url()
26    }
27
28    #[inline(always)]
29    pub fn local_endpoint(&self) {
30        self.as_tracker_alert().local_endpoint()
31    }
32
33    #[inline(always)]
34    pub fn event(&self) -> u8 {
35        unsafe { tracker_announce_alert_get_event(self.0) }
36    }
37
38    #[inline(always)]
39    pub fn version(&self) -> u8 {
40        unsafe { tracker_announce_alert_get_version(self.0) }
41    }
42}