pub struct LocalLb {
pub config: Config,
pub user_last_seen: Arc<RwLock<Instant>>,
pub keychain: Keychain,
pub db: Arc<RwLock<CoreDb>>,
pub docs: AsyncDocs,
pub client: Network,
pub events: EventSubs,
pub status: StatusUpdater,
pub syncer: Syncer,
}Fields§
§config: Config§user_last_seen: Arc<RwLock<Instant>>§keychain: Keychain§db: Arc<RwLock<CoreDb>>§docs: AsyncDocs§client: Network§events: EventSubs§status: StatusUpdater§syncer: SyncerImplementations§
Source§impl LocalLb
impl LocalLb
Sourcepub async fn create_account(
&self,
username: &str,
api_url: &str,
welcome_doc: bool,
) -> LbResult<Account>
pub async fn create_account( &self, username: &str, api_url: &str, welcome_doc: bool, ) -> LbResult<Account>
CoreError::AccountExists, CoreError::UsernameTaken, CoreError::UsernameInvalid, CoreError::ServerDisabled, CoreError::ServerUnreachable, CoreError::ClientUpdateRequired,
pub async fn import_account( &self, key: &str, api_url: Option<&str>, ) -> LbResult<Account>
pub async fn import_account_private_key_v1( &self, account: Account, ) -> LbResult<Account>
pub async fn import_account_private_key_v2( &self, private_key: SecretKey, api_url: &str, ) -> LbResult<Account>
pub async fn import_account_phrase( &self, phrase: [&str; 24], api_url: &str, ) -> LbResult<Account>
pub async fn delete_account(&self) -> LbResult<()>
Source§impl LocalLb
impl LocalLb
pub async fn suggested_docs( &self, settings: RankingWeights, ) -> LbResult<Vec<Uuid>>
pub async fn clear_suggested(&self) -> LbResult<()>
pub async fn clear_suggested_id(&self, id: Uuid) -> LbResult<()>
Sourcepub fn app_foregrounded(&self)
pub fn app_foregrounded(&self)
hint to background processing pipelines whether or not a user is around
Source§impl LocalLb
impl LocalLb
pub async fn disappear_account(&self, username: &str) -> LbResult<()>
pub async fn disappear_file(&self, id: Uuid) -> LbResult<()>
pub async fn list_users( &self, filter: Option<AccountFilter>, ) -> LbResult<Vec<Username>>
pub async fn get_account_info( &self, identifier: AccountIdentifier, ) -> LbResult<AccountInfo>
pub async fn validate_account( &self, username: &str, ) -> LbResult<AdminValidateAccount>
pub async fn validate_server(&self) -> LbResult<AdminValidateServer>
pub async fn file_info(&self, id: Uuid) -> LbResult<AdminFileInfoResponse>
pub async fn rebuild_index(&self, index: ServerIndex) -> LbResult<()>
pub async fn set_user_tier( &self, username: &str, info: AdminSetUserTierInfo, ) -> LbResult<()>
Source§impl LocalLb
impl LocalLb
pub async fn upgrade_account_stripe( &self, account_tier: StripeAccountTier, ) -> LbResult<()>
pub async fn upgrade_account_google_play( &self, purchase_token: &str, account_id: &str, ) -> LbResult<()>
pub async fn upgrade_account_app_store( &self, original_transaction_id: String, app_account_token: String, ) -> LbResult<()>
pub async fn cancel_subscription(&self) -> LbResult<()>
pub async fn get_subscription_info(&self) -> LbResult<Option<SubscriptionInfo>>
Source§impl LocalLb
impl LocalLb
Sourcepub async fn recent_panic(&self) -> LbResult<bool>
pub async fn recent_panic(&self) -> LbResult<bool>
returns true if we have crashed within the last 5 seconds
pub async fn write_panic_to_file( &self, error_header: String, bt: String, ) -> LbResult<String>
pub async fn debug_info( &self, os_info: String, check_docs: bool, ) -> LbResult<DebugInfo>
Source§impl LocalLb
impl LocalLb
pub async fn read_document( &self, id: Uuid, user_activity: bool, ) -> LbResult<DecryptedDocument>
pub async fn write_document(&self, id: Uuid, content: &[u8]) -> LbResult<()>
pub async fn read_document_with_hmac( &self, id: Uuid, user_activity: bool, ) -> LbResult<(Option<DocumentHmac>, DecryptedDocument)>
pub async fn safe_write( &self, id: Uuid, old_hmac: Option<DocumentHmac>, content: Vec<u8>, ) -> LbResult<DocumentHmac>
Source§impl LocalLb
impl LocalLb
pub async fn create_file( &self, name: &str, parent: &Uuid, file_type: FileType, ) -> LbResult<File>
pub async fn rename_file(&self, id: &Uuid, new_name: &str) -> LbResult<()>
pub async fn move_file(&self, id: &Uuid, new_parent: &Uuid) -> LbResult<()>
pub async fn delete(&self, id: &Uuid) -> LbResult<()>
pub async fn root(&self) -> LbResult<File>
pub async fn list_metadatas(&self) -> LbResult<Vec<File>>
pub async fn get_children(&self, id: &Uuid) -> LbResult<Vec<File>>
pub async fn get_and_get_children_recursively( &self, id: &Uuid, ) -> LbResult<Vec<File>>
pub async fn get_file_by_id(&self, id: Uuid) -> LbResult<File>
pub async fn get_file_link_url(&self, id: Uuid) -> LbResult<String>
pub async fn local_changes(&self) -> Vec<Uuid>
Source§impl LocalLb
impl LocalLb
pub async fn create_link_at_path( &self, path: &str, target_id: Uuid, ) -> LbResult<File>
pub async fn create_at_path(&self, path: &str) -> LbResult<File>
pub async fn get_by_path(&self, path: &str) -> LbResult<File>
pub async fn get_path_by_id(&self, id: Uuid) -> LbResult<String>
pub async fn list_paths(&self, filter: Option<Filter>) -> LbResult<Vec<String>>
pub async fn list_paths_with_ids( &self, filter: Option<Filter>, ) -> LbResult<Vec<(Uuid, String)>>
Source§impl LocalLb
impl LocalLb
returns pending shares – files shared with us that we haven’t accepted or rejected this function just returns the actual files that were shared – or the roots of shared trees. For the full set of shares see Self::get_pending_share_files
returns all the files associated with any pending shares (the share as well as it’s descendants).
pub async fn known_usernames(&self) -> LbResult<Vec<String>>
Source§impl LocalLb
impl LocalLb
Sourcepub async fn get_usage(&self) -> LbResult<UsageMetrics>
pub async fn get_usage(&self) -> LbResult<UsageMetrics>
fetches data footprint on server along with data cap information compares this to local changes to estimate net data increase
callers of this function should be prepared to handle:
Source§impl LocalLb
impl LocalLb
pub async fn status(&self) -> Status
pub async fn set_initial_state(&self) -> LbResult<()>
pub async fn setup_status(&self) -> LbResult<()>
pub async fn get_last_synced(&self) -> LbResult<i64>
pub async fn get_last_synced_human(&self) -> LbResult<String>
pub fn get_timestamp_human_string(&self, timestamp: i64) -> String
Trait Implementations§
Auto Trait Implementations§
impl !RefUnwindSafe for LocalLb
impl !UnwindSafe for LocalLb
impl Freeze for LocalLb
impl Send for LocalLb
impl Sync for LocalLb
impl Unpin for LocalLb
impl UnsafeUnpin for LocalLb
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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>
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>
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