Split MXKAccount from Data so just data can be loaded from disk without side effects. Also change force reload of accounts to stop double load on init.

This commit is contained in:
David Langley
2022-01-06 20:35:37 +00:00
parent 3155bf8ca0
commit 756b1c3d1d
11 changed files with 445 additions and 272 deletions

View File

@@ -110,6 +110,8 @@ extern NSString *const MXKAccountManagerDataType;
*/
+ (MXKAccountManager *)sharedManager;
+ (MXKAccountManager *)sharedManagerWithReload:(BOOL)reload;
/**
Check for each enabled account if a matrix session is already opened.
Open a matrix session for each enabled account which doesn't have a session.
@@ -208,11 +210,6 @@ extern NSString *const MXKAccountManagerDataType;
*/
- (MXKAccount *)accountKnowingUserWithUserId:(NSString *)userId;
/**
Force the account manager to reload existing accounts from the local storage.
The account manager is supposed to handle itself the list of the accounts.
Call this method only when an account has been changed from an other application from the same group.
*/
- (void)forceReloadAccounts;
- (void)readAndWriteCredentials:(void (^)(NSArray<MXCredentials*> * _Nullable readData, void (^completion)(BOOL didUpdateCredentials)))readAnWriteHandler;
@end