pub struct Mysql {
pub pool: MySqlPool,
}
Fields§
§pool: MySqlPool
Trait Implementations§
Source§impl Database for Mysql
impl Database for Mysql
Source§fn get_user_tracker_key<'life0, 'async_trait>(
&'life0 self,
user_id: i64,
) -> Pin<Box<dyn Future<Output = Option<TrackerKey>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_user_tracker_key<'life0, 'async_trait>(
&'life0 self,
user_id: i64,
) -> Pin<Box<dyn Future<Output = Option<TrackerKey>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Gets User Tracker Key
§Panics
Will panic if the input time overflows the u64
seconds overflows the i64
type.
(this will naturally happen in 292.5 billion years)
Source§fn get_database_driver(&self) -> Driver
fn get_database_driver(&self) -> Driver
Return current database driver.
fn new<'life0, 'async_trait>(
database_url: &'life0 str,
) -> Pin<Box<dyn Future<Output = Self> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Source§fn insert_user_and_get_id<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
username: &'life1 str,
email: &'life2 str,
password_hash: &'life3 str,
) -> Pin<Box<dyn Future<Output = Result<i64, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
fn insert_user_and_get_id<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
username: &'life1 str,
email: &'life2 str,
password_hash: &'life3 str,
) -> Pin<Box<dyn Future<Output = Result<i64, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
Add new user and return the newly inserted
user_id
.Source§fn get_user_from_id<'life0, 'async_trait>(
&'life0 self,
user_id: i64,
) -> Pin<Box<dyn Future<Output = Result<User, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_user_from_id<'life0, 'async_trait>(
&'life0 self,
user_id: i64,
) -> Pin<Box<dyn Future<Output = Result<User, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get
User
from user_id
.Source§fn get_user_authentication_from_id<'life0, 'async_trait>(
&'life0 self,
user_id: UserId,
) -> Pin<Box<dyn Future<Output = Result<UserAuthentication, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_user_authentication_from_id<'life0, 'async_trait>(
&'life0 self,
user_id: UserId,
) -> Pin<Box<dyn Future<Output = Result<UserAuthentication, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get
UserAuthentication
from user_id
.Source§fn get_user_profile_from_username<'life0, 'life1, 'async_trait>(
&'life0 self,
username: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<UserProfile, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_user_profile_from_username<'life0, 'life1, 'async_trait>(
&'life0 self,
username: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<UserProfile, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Get
UserProfile
from username
.Source§fn get_user_compact_from_id<'life0, 'async_trait>(
&'life0 self,
user_id: i64,
) -> Pin<Box<dyn Future<Output = Result<UserCompact, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_user_compact_from_id<'life0, 'async_trait>(
&'life0 self,
user_id: i64,
) -> Pin<Box<dyn Future<Output = Result<UserCompact, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get
UserCompact
from user_id
.Source§fn count_users<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<i64, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn count_users<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<i64, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get total user count.
Source§fn ban_user<'life0, 'life1, 'async_trait>(
&'life0 self,
user_id: i64,
reason: &'life1 str,
date_expiry: NaiveDateTime,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn ban_user<'life0, 'life1, 'async_trait>(
&'life0 self,
user_id: i64,
reason: &'life1 str,
date_expiry: NaiveDateTime,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Ban user with
user_id
, reason
and date_expiry
.Source§fn grant_admin_role<'life0, 'async_trait>(
&'life0 self,
user_id: i64,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn grant_admin_role<'life0, 'async_trait>(
&'life0 self,
user_id: i64,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Grant a user the administrator role.
Source§fn verify_email<'life0, 'async_trait>(
&'life0 self,
user_id: i64,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn verify_email<'life0, 'async_trait>(
&'life0 self,
user_id: i64,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Verify a user’s email with
user_id
.Source§fn add_tracker_key<'life0, 'life1, 'async_trait>(
&'life0 self,
user_id: i64,
tracker_key: &'life1 TrackerKey,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn add_tracker_key<'life0, 'life1, 'async_trait>(
&'life0 self,
user_id: i64,
tracker_key: &'life1 TrackerKey,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Link a
TrackerKey
to a certain user with user_id
.Source§fn delete_user<'life0, 'async_trait>(
&'life0 self,
user_id: i64,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn delete_user<'life0, 'async_trait>(
&'life0 self,
user_id: i64,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Delete user and all related user data with
user_id
.Source§fn insert_category_and_get_id<'life0, 'life1, 'async_trait>(
&'life0 self,
category_name: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<i64, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn insert_category_and_get_id<'life0, 'life1, 'async_trait>(
&'life0 self,
category_name: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<i64, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Add a new category and return
category_id
.Source§fn get_category_from_id<'life0, 'async_trait>(
&'life0 self,
category_id: i64,
) -> Pin<Box<dyn Future<Output = Result<Category, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_category_from_id<'life0, 'async_trait>(
&'life0 self,
category_id: i64,
) -> Pin<Box<dyn Future<Output = Result<Category, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get
Category
from category_id
.Source§fn get_category_from_name<'life0, 'life1, 'async_trait>(
&'life0 self,
category_name: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Category, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_category_from_name<'life0, 'life1, 'async_trait>(
&'life0 self,
category_name: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Category, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Get
Category
from category_name
.Source§fn get_categories<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<Category>, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_categories<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<Category>, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get all categories as
Vec<Category>
.Source§fn delete_category<'life0, 'life1, 'async_trait>(
&'life0 self,
category_name: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn delete_category<'life0, 'life1, 'async_trait>(
&'life0 self,
category_name: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Delete category with
category_name
.Source§fn get_torrents_search_sorted_paginated<'life0, 'life1, 'life2, 'life3, 'life4, 'async_trait>(
&'life0 self,
search: &'life1 Option<String>,
categories: &'life2 Option<Vec<String>>,
tags: &'life3 Option<Vec<String>>,
sort: &'life4 Sorting,
offset: u64,
limit: u8,
) -> Pin<Box<dyn Future<Output = Result<TorrentsResponse, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
'life4: 'async_trait,
fn get_torrents_search_sorted_paginated<'life0, 'life1, 'life2, 'life3, 'life4, 'async_trait>(
&'life0 self,
search: &'life1 Option<String>,
categories: &'life2 Option<Vec<String>>,
tags: &'life3 Option<Vec<String>>,
sort: &'life4 Sorting,
offset: u64,
limit: u8,
) -> Pin<Box<dyn Future<Output = Result<TorrentsResponse, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
'life4: 'async_trait,
Get results of a torrent search in a paginated and sorted form as
TorrentsResponse
from search
, categories
, sort
, offset
and page_size
.Source§fn insert_torrent_and_get_id<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
torrent: &'life1 Torrent,
uploader_id: UserId,
category_id: i64,
title: &'life2 str,
description: &'life3 str,
) -> Pin<Box<dyn Future<Output = Result<i64, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
fn insert_torrent_and_get_id<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
torrent: &'life1 Torrent,
uploader_id: UserId,
category_id: i64,
title: &'life2 str,
description: &'life3 str,
) -> Pin<Box<dyn Future<Output = Result<i64, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
Add new torrent and return the newly inserted
torrent_id
with torrent
, uploader_id
, category_id
, title
and description
.Source§fn get_torrent_info_from_id<'life0, 'async_trait>(
&'life0 self,
torrent_id: i64,
) -> Pin<Box<dyn Future<Output = Result<DbTorrentInfo, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_torrent_info_from_id<'life0, 'async_trait>(
&'life0 self,
torrent_id: i64,
) -> Pin<Box<dyn Future<Output = Result<DbTorrentInfo, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get torrent’s info as
DbTorrentInfo
from torrent_id
.Source§fn get_torrent_info_from_info_hash<'life0, 'life1, 'async_trait>(
&'life0 self,
info_hash: &'life1 InfoHash,
) -> Pin<Box<dyn Future<Output = Result<DbTorrentInfo, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_torrent_info_from_info_hash<'life0, 'life1, 'async_trait>(
&'life0 self,
info_hash: &'life1 InfoHash,
) -> Pin<Box<dyn Future<Output = Result<DbTorrentInfo, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Get torrent’s info as
DbTorrentInfo
from torrent InfoHash
.Source§fn get_torrent_files_from_id<'life0, 'async_trait>(
&'life0 self,
torrent_id: i64,
) -> Pin<Box<dyn Future<Output = Result<Vec<TorrentFile>, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_torrent_files_from_id<'life0, 'async_trait>(
&'life0 self,
torrent_id: i64,
) -> Pin<Box<dyn Future<Output = Result<Vec<TorrentFile>, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get all torrent’s files as
Vec<TorrentFile>
from torrent_id
.Source§fn get_torrent_announce_urls_from_id<'life0, 'async_trait>(
&'life0 self,
torrent_id: i64,
) -> Pin<Box<dyn Future<Output = Result<Vec<Vec<String>>, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_torrent_announce_urls_from_id<'life0, 'async_trait>(
&'life0 self,
torrent_id: i64,
) -> Pin<Box<dyn Future<Output = Result<Vec<Vec<String>>, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get all torrent’s announce urls as
Vec<Vec<String>>
from torrent_id
.Source§fn get_torrent_listing_from_id<'life0, 'async_trait>(
&'life0 self,
torrent_id: i64,
) -> Pin<Box<dyn Future<Output = Result<TorrentListing, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_torrent_listing_from_id<'life0, 'async_trait>(
&'life0 self,
torrent_id: i64,
) -> Pin<Box<dyn Future<Output = Result<TorrentListing, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get
TorrentListing
from torrent_id
.Source§fn get_torrent_listing_from_info_hash<'life0, 'life1, 'async_trait>(
&'life0 self,
info_hash: &'life1 InfoHash,
) -> Pin<Box<dyn Future<Output = Result<TorrentListing, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_torrent_listing_from_info_hash<'life0, 'life1, 'async_trait>(
&'life0 self,
info_hash: &'life1 InfoHash,
) -> Pin<Box<dyn Future<Output = Result<TorrentListing, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Get
TorrentListing
from InfoHash
.Source§fn get_all_torrents_compact<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<TorrentCompact>, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_all_torrents_compact<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<TorrentCompact>, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get all torrents as
Vec<TorrentCompact>
.Source§fn update_torrent_title<'life0, 'life1, 'async_trait>(
&'life0 self,
torrent_id: i64,
title: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn update_torrent_title<'life0, 'life1, 'async_trait>(
&'life0 self,
torrent_id: i64,
title: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Update a torrent’s title with
torrent_id
and title
.Source§fn update_torrent_description<'life0, 'life1, 'async_trait>(
&'life0 self,
torrent_id: i64,
description: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn update_torrent_description<'life0, 'life1, 'async_trait>(
&'life0 self,
torrent_id: i64,
description: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Update a torrent’s description with
torrent_id
and description
.Source§fn update_torrent_category<'life0, 'async_trait>(
&'life0 self,
torrent_id: i64,
category_id: CategoryId,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn update_torrent_category<'life0, 'async_trait>(
&'life0 self,
torrent_id: i64,
category_id: CategoryId,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Update a torrent’s category with
torrent_id
and category_id
.Source§fn add_tag<'life0, 'life1, 'async_trait>(
&'life0 self,
name: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn add_tag<'life0, 'life1, 'async_trait>(
&'life0 self,
name: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Add a new tag.
Source§fn delete_tag<'life0, 'async_trait>(
&'life0 self,
tag_id: TagId,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn delete_tag<'life0, 'async_trait>(
&'life0 self,
tag_id: TagId,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Delete a tag.
Source§fn add_torrent_tag_link<'life0, 'async_trait>(
&'life0 self,
torrent_id: i64,
tag_id: TagId,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn add_torrent_tag_link<'life0, 'async_trait>(
&'life0 self,
torrent_id: i64,
tag_id: TagId,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Add a tag to torrent.
Source§fn add_torrent_tag_links<'life0, 'life1, 'async_trait>(
&'life0 self,
torrent_id: i64,
tag_ids: &'life1 [TagId],
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn add_torrent_tag_links<'life0, 'life1, 'async_trait>(
&'life0 self,
torrent_id: i64,
tag_ids: &'life1 [TagId],
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Add multiple tags to a torrent at once.
Source§fn delete_torrent_tag_link<'life0, 'async_trait>(
&'life0 self,
torrent_id: i64,
tag_id: TagId,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn delete_torrent_tag_link<'life0, 'async_trait>(
&'life0 self,
torrent_id: i64,
tag_id: TagId,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Remove a tag from torrent.
Source§fn delete_all_torrent_tag_links<'life0, 'async_trait>(
&'life0 self,
torrent_id: i64,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn delete_all_torrent_tag_links<'life0, 'async_trait>(
&'life0 self,
torrent_id: i64,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Remove all tags from torrent.
Source§fn get_tag_from_name<'life0, 'life1, 'async_trait>(
&'life0 self,
name: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<TorrentTag, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_tag_from_name<'life0, 'life1, 'async_trait>(
&'life0 self,
name: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<TorrentTag, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Get tag from name.
Get all tags as
Vec<TorrentTag>
.Get tags for
torrent_id
.Source§fn update_tracker_info<'life0, 'life1, 'async_trait>(
&'life0 self,
torrent_id: i64,
tracker_url: &'life1 str,
seeders: i64,
leechers: i64,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn update_tracker_info<'life0, 'life1, 'async_trait>(
&'life0 self,
torrent_id: i64,
tracker_url: &'life1 str,
seeders: i64,
leechers: i64,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Update the seeders and leechers info for a torrent with
torrent_id
, tracker_url
, seeders
and leechers
.Source§fn delete_torrent<'life0, 'async_trait>(
&'life0 self,
torrent_id: i64,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn delete_torrent<'life0, 'async_trait>(
&'life0 self,
torrent_id: i64,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Delete a torrent with
torrent_id
.Source§fn delete_all_database_rows<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn delete_all_database_rows<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
DELETES ALL DATABASE ROWS, ONLY CALL THIS IF YOU KNOW WHAT YOU’RE DOING!
Auto Trait Implementations§
impl Freeze for Mysql
impl !RefUnwindSafe for Mysql
impl Send for Mysql
impl Sync for Mysql
impl Unpin for Mysql
impl !UnwindSafe for Mysql
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more