darkwing::database::browser_profile::repository

Trait BrowserProfileRepository

source
pub trait BrowserProfileRepository {
    // Required methods
    fn get_mini_by_id<'life0, 'async_trait>(
        &'life0 self,
        id: i64,
    ) -> Pin<Box<dyn Future<Output = Result<MiniBrowserProfile>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;
    fn get_preliminary_by_id<'life0, 'async_trait>(
        &'life0 self,
        id: i64,
    ) -> Pin<Box<dyn Future<Output = Result<BrowserProfilePreliminary>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;
    fn get_by_id_with_fingerprint<'life0, 'async_trait>(
        &'life0 self,
        id: i64,
    ) -> Pin<Box<dyn Future<Output = Result<BrowserProfileWithFingerprint>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;
    fn get_homepages_by_browser_profile_id<'life0, 'async_trait>(
        &'life0 self,
        id: i64,
    ) -> Pin<Box<dyn Future<Output = Result<Vec<Homepage>>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;
    fn get_bookmarks<'life0, 'async_trait>(
        &'life0 self,
        user_id: i64,
        team_id: i64,
        main_website: MainWebsite,
    ) -> Pin<Box<dyn Future<Output = Result<Vec<Bookmark>>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;
    fn get_extensions<'life0, 'async_trait>(
        &'life0 self,
        user_id: i64,
        team_id: i64,
    ) -> Pin<Box<dyn Future<Output = Result<Vec<Extension>>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;
    fn update_datadir_hash<'life0, 'async_trait>(
        &'life0 self,
        id: i64,
        hash: String,
    ) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;
    fn is_pending_transfer<'life0, 'async_trait>(
        &'life0 self,
        browser_profile_id: i64,
    ) -> Pin<Box<dyn Future<Output = Result<bool>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;
}
Expand description

Repository trait defining operations for browser profile data access. Provides methods to retrieve and update browser profile related information.

Required Methods§

source

fn get_mini_by_id<'life0, 'async_trait>( &'life0 self, id: i64, ) -> Pin<Box<dyn Future<Output = Result<MiniBrowserProfile>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Retrieves minimal browser profile information by ID.

source

fn get_preliminary_by_id<'life0, 'async_trait>( &'life0 self, id: i64, ) -> Pin<Box<dyn Future<Output = Result<BrowserProfilePreliminary>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Retrieves preliminary browser profile data by ID. This includes basic profile information without full fingerprint details.

source

fn get_by_id_with_fingerprint<'life0, 'async_trait>( &'life0 self, id: i64, ) -> Pin<Box<dyn Future<Output = Result<BrowserProfileWithFingerprint>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Retrieves complete browser profile information including fingerprint data by ID.

source

fn get_homepages_by_browser_profile_id<'life0, 'async_trait>( &'life0 self, id: i64, ) -> Pin<Box<dyn Future<Output = Result<Vec<Homepage>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Retrieves all homepages associated with a browser profile ID.

source

fn get_bookmarks<'life0, 'async_trait>( &'life0 self, user_id: i64, team_id: i64, main_website: MainWebsite, ) -> Pin<Box<dyn Future<Output = Result<Vec<Bookmark>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Retrieves bookmarks filtered by user ID, team ID and main website.

source

fn get_extensions<'life0, 'async_trait>( &'life0 self, user_id: i64, team_id: i64, ) -> Pin<Box<dyn Future<Output = Result<Vec<Extension>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Retrieves extensions available to a user based on user ID and team ID.

source

fn update_datadir_hash<'life0, 'async_trait>( &'life0 self, id: i64, hash: String, ) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Updates or inserts the datadir hash for a browser profile.

source

fn is_pending_transfer<'life0, 'async_trait>( &'life0 self, browser_profile_id: i64, ) -> Pin<Box<dyn Future<Output = Result<bool>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Checks if a browser profile has a pending transfer.

Implementors§

source§

impl BrowserProfileRepository for Database

source§

impl BrowserProfileRepository for MockBrowserProfileRepository

Repository trait defining operations for browser profile data access. Provides methods to retrieve and update browser profile related information.