TF-886 Sync delete token oidc and clear cache

This commit is contained in:
dab246
2022-09-07 11:54:53 +07:00
committed by Dat H. Pham
parent e255ea0b61
commit 34f99f38e5
18 changed files with 41 additions and 46 deletions
@@ -153,7 +153,6 @@ abstract class ReloadableController extends BaseController {
void handleLogoutOidcSuccess(LogoutOidcSuccess success) async { void handleLogoutOidcSuccess(LogoutOidcSuccess success) async {
log('ReloadableController::handleLogoutOidcSuccess(): $success'); log('ReloadableController::handleLogoutOidcSuccess(): $success');
await Future.wait([ await Future.wait([
_deleteCredentialInteractor.execute(),
_deleteAuthorityOidcInteractor.execute(), _deleteAuthorityOidcInteractor.execute(),
_cachingManager.clearAll(), _cachingManager.clearAll(),
_languageCacheManager.removeLanguage(), _languageCacheManager.removeLanguage(),
-10
View File
@@ -1,13 +1,11 @@
import 'package:flutter/foundation.dart'; import 'package:flutter/foundation.dart';
import 'package:tmail_ui_user/features/caching/account_cache_client.dart'; import 'package:tmail_ui_user/features/caching/account_cache_client.dart';
import 'package:tmail_ui_user/features/caching/authentication_info_cache_client.dart';
import 'package:tmail_ui_user/features/caching/email_cache_client.dart'; import 'package:tmail_ui_user/features/caching/email_cache_client.dart';
import 'package:tmail_ui_user/features/caching/encryption_key_cache_client.dart'; import 'package:tmail_ui_user/features/caching/encryption_key_cache_client.dart';
import 'package:tmail_ui_user/features/caching/mailbox_cache_client.dart'; import 'package:tmail_ui_user/features/caching/mailbox_cache_client.dart';
import 'package:tmail_ui_user/features/caching/recent_search_cache_client.dart'; import 'package:tmail_ui_user/features/caching/recent_search_cache_client.dart';
import 'package:tmail_ui_user/features/caching/state_cache_client.dart'; import 'package:tmail_ui_user/features/caching/state_cache_client.dart';
import 'package:tmail_ui_user/features/caching/token_oidc_cache_client.dart';
class CachingManager { class CachingManager {
@@ -15,20 +13,16 @@ class CachingManager {
final StateCacheClient _stateCacheClient; final StateCacheClient _stateCacheClient;
final EmailCacheClient _emailCacheClient; final EmailCacheClient _emailCacheClient;
final RecentSearchCacheClient _recentSearchCacheClient; final RecentSearchCacheClient _recentSearchCacheClient;
final TokenOidcCacheClient _tokenOidcCacheClient;
final AccountCacheClient _accountCacheClient; final AccountCacheClient _accountCacheClient;
final EncryptionKeyCacheClient _encryptionKeyCacheClient; final EncryptionKeyCacheClient _encryptionKeyCacheClient;
final AuthenticationInfoCacheClient _authenticationInfoCacheClient;
CachingManager( CachingManager(
this._mailboxCacheClient, this._mailboxCacheClient,
this._stateCacheClient, this._stateCacheClient,
this._emailCacheClient, this._emailCacheClient,
this._recentSearchCacheClient, this._recentSearchCacheClient,
this._tokenOidcCacheClient,
this._accountCacheClient, this._accountCacheClient,
this._encryptionKeyCacheClient, this._encryptionKeyCacheClient,
this._authenticationInfoCacheClient,
); );
Future<void> clearAll() async { Future<void> clearAll() async {
@@ -38,10 +32,8 @@ class CachingManager {
_mailboxCacheClient.clearAllData(), _mailboxCacheClient.clearAllData(),
_emailCacheClient.clearAllData(), _emailCacheClient.clearAllData(),
_recentSearchCacheClient.clearAllData(), _recentSearchCacheClient.clearAllData(),
_tokenOidcCacheClient.clearAllData(),
_accountCacheClient.clearAllData(), _accountCacheClient.clearAllData(),
_encryptionKeyCacheClient.clearAllData(), _encryptionKeyCacheClient.clearAllData(),
_authenticationInfoCacheClient.clearAllData(),
]); ]);
} else { } else {
await Future.wait([ await Future.wait([
@@ -49,10 +41,8 @@ class CachingManager {
_mailboxCacheClient.deleteBox(), _mailboxCacheClient.deleteBox(),
_emailCacheClient.deleteBox(), _emailCacheClient.deleteBox(),
_recentSearchCacheClient.deleteBox(), _recentSearchCacheClient.deleteBox(),
_tokenOidcCacheClient.deleteBox(),
_accountCacheClient.deleteBox(), _accountCacheClient.deleteBox(),
_encryptionKeyCacheClient.deleteBox(), _encryptionKeyCacheClient.deleteBox(),
_authenticationInfoCacheClient.deleteBox(),
]); ]);
} }
} }
@@ -1,6 +1,5 @@
import 'package:core/core.dart'; import 'package:core/core.dart';
import 'package:get/get.dart'; import 'package:get/get.dart';
import 'package:shared_preferences/shared_preferences.dart';
import 'package:tmail_ui_user/features/base/base_bindings.dart'; import 'package:tmail_ui_user/features/base/base_bindings.dart';
import 'package:tmail_ui_user/features/caching/state_cache_client.dart'; import 'package:tmail_ui_user/features/caching/state_cache_client.dart';
import 'package:tmail_ui_user/features/email/data/datasource/email_datasource.dart'; import 'package:tmail_ui_user/features/email/data/datasource/email_datasource.dart';
@@ -24,7 +23,6 @@ import 'package:tmail_ui_user/features/login/data/datasource/authentication_oidc
import 'package:tmail_ui_user/features/login/data/datasource_impl/authentication_oidc_datasource_impl.dart'; import 'package:tmail_ui_user/features/login/data/datasource_impl/authentication_oidc_datasource_impl.dart';
import 'package:tmail_ui_user/features/login/data/datasource_impl/hive_account_datasource_impl.dart'; import 'package:tmail_ui_user/features/login/data/datasource_impl/hive_account_datasource_impl.dart';
import 'package:tmail_ui_user/features/login/data/local/account_cache_manager.dart'; import 'package:tmail_ui_user/features/login/data/local/account_cache_manager.dart';
import 'package:tmail_ui_user/features/login/data/local/authentication_info_cache_manager.dart';
import 'package:tmail_ui_user/features/login/data/local/oidc_configuration_cache_manager.dart'; import 'package:tmail_ui_user/features/login/data/local/oidc_configuration_cache_manager.dart';
import 'package:tmail_ui_user/features/login/data/local/token_oidc_cache_manager.dart'; import 'package:tmail_ui_user/features/login/data/local/token_oidc_cache_manager.dart';
import 'package:tmail_ui_user/features/login/data/network/authentication_client/authentication_client_base.dart'; import 'package:tmail_ui_user/features/login/data/network/authentication_client/authentication_client_base.dart';
@@ -32,7 +30,6 @@ import 'package:tmail_ui_user/features/login/data/network/config/authorization_i
import 'package:tmail_ui_user/features/login/data/network/oidc_http_client.dart'; import 'package:tmail_ui_user/features/login/data/network/oidc_http_client.dart';
import 'package:tmail_ui_user/features/login/data/repository/account_repository_impl.dart'; import 'package:tmail_ui_user/features/login/data/repository/account_repository_impl.dart';
import 'package:tmail_ui_user/features/login/data/repository/authentication_oidc_repository_impl.dart'; import 'package:tmail_ui_user/features/login/data/repository/authentication_oidc_repository_impl.dart';
import 'package:tmail_ui_user/features/login/data/repository/credential_repository_impl.dart';
import 'package:tmail_ui_user/features/login/domain/repository/account_repository.dart'; import 'package:tmail_ui_user/features/login/domain/repository/account_repository.dart';
import 'package:tmail_ui_user/features/login/domain/repository/authentication_oidc_repository.dart'; import 'package:tmail_ui_user/features/login/domain/repository/authentication_oidc_repository.dart';
import 'package:tmail_ui_user/features/login/domain/repository/credential_repository.dart'; import 'package:tmail_ui_user/features/login/domain/repository/credential_repository.dart';
@@ -131,7 +128,6 @@ class EmailBindings extends BaseBindings {
void bindingsRepository() { void bindingsRepository() {
Get.lazyPut<MailboxRepository>(() => Get.find<MailboxRepositoryImpl>()); Get.lazyPut<MailboxRepository>(() => Get.find<MailboxRepositoryImpl>());
Get.lazyPut<EmailRepository>(() => Get.find<EmailRepositoryImpl>()); Get.lazyPut<EmailRepository>(() => Get.find<EmailRepositoryImpl>());
Get.lazyPut<CredentialRepository>(() => Get.find<CredentialRepositoryImpl>());
Get.lazyPut<AccountRepository>(() => Get.find<AccountRepositoryImpl>()); Get.lazyPut<AccountRepository>(() => Get.find<AccountRepositoryImpl>());
Get.lazyPut<AuthenticationOIDCRepository>(() => Get.find<AuthenticationOIDCRepositoryImpl>()); Get.lazyPut<AuthenticationOIDCRepository>(() => Get.find<AuthenticationOIDCRepositoryImpl>());
} }
@@ -150,9 +146,6 @@ class EmailBindings extends BaseBindings {
Get.find<HtmlDataSource>(), Get.find<HtmlDataSource>(),
Get.find<StateDataSource>() Get.find<StateDataSource>()
)); ));
Get.lazyPut(() => CredentialRepositoryImpl(
Get.find<SharedPreferences>(),
Get.find<AuthenticationInfoCacheManager>(),));
Get.lazyPut(() => AccountRepositoryImpl(Get.find<AccountDatasource>())); Get.lazyPut(() => AccountRepositoryImpl(Get.find<AccountDatasource>()));
Get.lazyPut(() => AuthenticationOIDCRepositoryImpl(Get.find<AuthenticationOIDCDataSource>())); Get.lazyPut(() => AuthenticationOIDCRepositoryImpl(Get.find<AuthenticationOIDCDataSource>()));
} }
@@ -91,7 +91,9 @@ class HomeBindings extends BaseBindings {
)); ));
Get.lazyPut(() => CleanupEmailCacheInteractor(Get.find<CleanupRepository>())); Get.lazyPut(() => CleanupEmailCacheInteractor(Get.find<CleanupRepository>()));
Get.lazyPut(() => CleanupRecentSearchCacheInteractor(Get.find<CleanupRepository>())); Get.lazyPut(() => CleanupRecentSearchCacheInteractor(Get.find<CleanupRepository>()));
Get.lazyPut(() => DeleteAuthorityOidcInteractor(Get.find<AuthenticationOIDCRepository>())); Get.lazyPut(() => DeleteAuthorityOidcInteractor(
Get.find<AuthenticationOIDCRepository>(),
Get.find<CredentialRepository>()));
Get.lazyPut(() => CheckOIDCIsAvailableInteractor(Get.find<AuthenticationOIDCRepository>())); Get.lazyPut(() => CheckOIDCIsAvailableInteractor(Get.find<AuthenticationOIDCRepository>()));
} }
@@ -10,6 +10,8 @@ abstract class AuthenticationOIDCDataSource {
Future<void> persistTokenOIDC(TokenOIDC tokenOidc); Future<void> persistTokenOIDC(TokenOIDC tokenOidc);
Future<void> deleteTokenOIDC();
Future<TokenOIDC> getStoredTokenOIDC(String tokenIdHash); Future<TokenOIDC> getStoredTokenOIDC(String tokenIdHash);
Future<void> persistAuthorityOidc(String authority); Future<void> persistAuthorityOidc(String authority);
@@ -101,4 +101,9 @@ class AuthenticationOIDCDataSourceImpl extends AuthenticationOIDCDataSource {
Future<String?> getAuthenticationInfo() { Future<String?> getAuthenticationInfo() {
return _authenticationClient.getAuthenticationInfo(); return _authenticationClient.getAuthenticationInfo();
} }
@override
Future<void> deleteTokenOIDC() {
return _tokenOidcCacheManager.deleteTokenOidc();
}
} }
@@ -31,4 +31,8 @@ class TokenOidcCacheManager {
log('TokenOidcCacheManager::persistOneTokenOidc(): token: ${tokenOIDC.token}'); log('TokenOidcCacheManager::persistOneTokenOidc(): token: ${tokenOIDC.token}');
await _tokenOidcCacheClient.insertItem(tokenOIDC.tokenIdHash, tokenOIDC.toTokenOidcCache()); await _tokenOidcCacheClient.insertItem(tokenOIDC.tokenIdHash, tokenOIDC.toTokenOidcCache());
} }
Future<void> deleteTokenOidc() async {
await _tokenOidcCacheClient.clearAllData();
}
} }
@@ -82,4 +82,9 @@ class AuthenticationOIDCRepositoryImpl extends AuthenticationOIDCRepository {
Future<String?> getAuthenticationInfo() { Future<String?> getAuthenticationInfo() {
return _oidcDataSource.getAuthenticationInfo(); return _oidcDataSource.getAuthenticationInfo();
} }
@override
Future<void> deleteTokenOIDC() {
return _oidcDataSource.deleteTokenOIDC();
}
} }
@@ -10,6 +10,8 @@ abstract class AuthenticationOIDCRepository {
Future<void> persistTokenOIDC(TokenOIDC tokenOidc); Future<void> persistTokenOIDC(TokenOIDC tokenOidc);
Future<void> deleteTokenOIDC();
Future<TokenOIDC> getStoredTokenOIDC(String tokenIdHash); Future<TokenOIDC> getStoredTokenOIDC(String tokenIdHash);
Future<void> persistAuthorityOidc(String authority); Future<void> persistAuthorityOidc(String authority);
@@ -4,16 +4,22 @@ import 'package:core/presentation/state/failure.dart';
import 'package:core/presentation/state/success.dart'; import 'package:core/presentation/state/success.dart';
import 'package:dartz/dartz.dart'; import 'package:dartz/dartz.dart';
import 'package:tmail_ui_user/features/login/domain/repository/authentication_oidc_repository.dart'; import 'package:tmail_ui_user/features/login/domain/repository/authentication_oidc_repository.dart';
import 'package:tmail_ui_user/features/login/domain/repository/credential_repository.dart';
import 'package:tmail_ui_user/features/login/domain/state/delete_authority_oidc_state.dart'; import 'package:tmail_ui_user/features/login/domain/state/delete_authority_oidc_state.dart';
class DeleteAuthorityOidcInteractor { class DeleteAuthorityOidcInteractor {
final AuthenticationOIDCRepository _authenticationOIDCRepository; final AuthenticationOIDCRepository _authenticationOIDCRepository;
final CredentialRepository _credentialRepository;
DeleteAuthorityOidcInteractor(this._authenticationOIDCRepository); DeleteAuthorityOidcInteractor(this._authenticationOIDCRepository, this._credentialRepository);
Future<Either<Failure, Success>> execute() async { Future<Either<Failure, Success>> execute() async {
try { try {
await _authenticationOIDCRepository.deleteAuthorityOidc(); await Future.wait([
_credentialRepository.removeBaseUrl(),
_authenticationOIDCRepository.deleteAuthorityOidc(),
_authenticationOIDCRepository.deleteTokenOIDC(),
]);
return Right(DeleteAuthorityOidcSuccess()); return Right(DeleteAuthorityOidcSuccess());
} catch (exception) { } catch (exception) {
return Left(DeleteAuthorityOidcFailure(exception)); return Left(DeleteAuthorityOidcFailure(exception));
@@ -1,6 +1,5 @@
import 'package:core/core.dart'; import 'package:core/core.dart';
import 'package:get/get.dart'; import 'package:get/get.dart';
import 'package:shared_preferences/shared_preferences.dart';
import 'package:tmail_ui_user/features/base/base_bindings.dart'; import 'package:tmail_ui_user/features/base/base_bindings.dart';
import 'package:tmail_ui_user/features/login/data/datasource/account_datasource.dart'; import 'package:tmail_ui_user/features/login/data/datasource/account_datasource.dart';
import 'package:tmail_ui_user/features/login/data/datasource/authentication_datasource.dart'; import 'package:tmail_ui_user/features/login/data/datasource/authentication_datasource.dart';
@@ -9,7 +8,6 @@ import 'package:tmail_ui_user/features/login/data/datasource_impl/authentication
import 'package:tmail_ui_user/features/login/data/datasource_impl/authentication_oidc_datasource_impl.dart'; import 'package:tmail_ui_user/features/login/data/datasource_impl/authentication_oidc_datasource_impl.dart';
import 'package:tmail_ui_user/features/login/data/datasource_impl/hive_account_datasource_impl.dart'; import 'package:tmail_ui_user/features/login/data/datasource_impl/hive_account_datasource_impl.dart';
import 'package:tmail_ui_user/features/login/data/local/account_cache_manager.dart'; import 'package:tmail_ui_user/features/login/data/local/account_cache_manager.dart';
import 'package:tmail_ui_user/features/login/data/local/authentication_info_cache_manager.dart';
import 'package:tmail_ui_user/features/login/data/local/oidc_configuration_cache_manager.dart'; import 'package:tmail_ui_user/features/login/data/local/oidc_configuration_cache_manager.dart';
import 'package:tmail_ui_user/features/login/data/local/token_oidc_cache_manager.dart'; import 'package:tmail_ui_user/features/login/data/local/token_oidc_cache_manager.dart';
import 'package:tmail_ui_user/features/login/data/network/authentication_client/authentication_client_base.dart'; import 'package:tmail_ui_user/features/login/data/network/authentication_client/authentication_client_base.dart';
@@ -18,7 +16,6 @@ import 'package:tmail_ui_user/features/login/data/network/oidc_http_client.dart'
import 'package:tmail_ui_user/features/login/data/repository/account_repository_impl.dart'; import 'package:tmail_ui_user/features/login/data/repository/account_repository_impl.dart';
import 'package:tmail_ui_user/features/login/data/repository/authentication_oidc_repository_impl.dart'; import 'package:tmail_ui_user/features/login/data/repository/authentication_oidc_repository_impl.dart';
import 'package:tmail_ui_user/features/login/data/repository/authentication_repository_impl.dart'; import 'package:tmail_ui_user/features/login/data/repository/authentication_repository_impl.dart';
import 'package:tmail_ui_user/features/login/data/repository/credential_repository_impl.dart';
import 'package:tmail_ui_user/features/login/domain/repository/account_repository.dart'; import 'package:tmail_ui_user/features/login/domain/repository/account_repository.dart';
import 'package:tmail_ui_user/features/login/domain/repository/authentication_oidc_repository.dart'; import 'package:tmail_ui_user/features/login/domain/repository/authentication_oidc_repository.dart';
import 'package:tmail_ui_user/features/login/domain/repository/authentication_repository.dart'; import 'package:tmail_ui_user/features/login/domain/repository/authentication_repository.dart';
@@ -103,7 +100,6 @@ class LoginBindings extends BaseBindings {
@override @override
void bindingsRepository() { void bindingsRepository() {
Get.lazyPut<CredentialRepository>(() => Get.find<CredentialRepositoryImpl>());
Get.lazyPut<AuthenticationRepository>(() => Get.find<AuthenticationRepositoryImpl>()); Get.lazyPut<AuthenticationRepository>(() => Get.find<AuthenticationRepositoryImpl>());
Get.lazyPut<AuthenticationOIDCRepository>(() => Get.find<AuthenticationOIDCRepositoryImpl>()); Get.lazyPut<AuthenticationOIDCRepository>(() => Get.find<AuthenticationOIDCRepositoryImpl>());
Get.lazyPut<AccountRepository>(() => Get.find<AccountRepositoryImpl>()); Get.lazyPut<AccountRepository>(() => Get.find<AccountRepositoryImpl>());
@@ -111,9 +107,6 @@ class LoginBindings extends BaseBindings {
@override @override
void bindingsRepositoryImpl() { void bindingsRepositoryImpl() {
Get.lazyPut(() => CredentialRepositoryImpl(
Get.find<SharedPreferences>(),
Get.find<AuthenticationInfoCacheManager>()));
Get.lazyPut(() => AuthenticationRepositoryImpl(Get.find<AuthenticationDataSource>())); Get.lazyPut(() => AuthenticationRepositoryImpl(Get.find<AuthenticationDataSource>()));
Get.lazyPut(() => AuthenticationOIDCRepositoryImpl(Get.find<AuthenticationOIDCDataSource>())); Get.lazyPut(() => AuthenticationOIDCRepositoryImpl(Get.find<AuthenticationOIDCDataSource>()));
Get.lazyPut(() => AccountRepositoryImpl(Get.find<AccountDatasource>())); Get.lazyPut(() => AccountRepositoryImpl(Get.find<AccountDatasource>()));
@@ -1,14 +1,10 @@
import 'package:core/core.dart'; import 'package:core/core.dart';
import 'package:get/get.dart'; import 'package:get/get.dart';
import 'package:shared_preferences/shared_preferences.dart';
import 'package:tmail_ui_user/features/base/base_bindings.dart'; import 'package:tmail_ui_user/features/base/base_bindings.dart';
import 'package:tmail_ui_user/features/caching/state_cache_client.dart'; import 'package:tmail_ui_user/features/caching/state_cache_client.dart';
import 'package:tmail_ui_user/features/email/data/datasource/email_datasource.dart'; import 'package:tmail_ui_user/features/email/data/datasource/email_datasource.dart';
import 'package:tmail_ui_user/features/email/data/datasource_impl/email_datasource_impl.dart'; import 'package:tmail_ui_user/features/email/data/datasource_impl/email_datasource_impl.dart';
import 'package:tmail_ui_user/features/email/data/network/email_api.dart'; import 'package:tmail_ui_user/features/email/data/network/email_api.dart';
import 'package:tmail_ui_user/features/login/data/local/authentication_info_cache_manager.dart';
import 'package:tmail_ui_user/features/login/data/repository/credential_repository_impl.dart';
import 'package:tmail_ui_user/features/login/domain/repository/credential_repository.dart';
import 'package:tmail_ui_user/features/mailbox/data/datasource/mailbox_datasource.dart'; import 'package:tmail_ui_user/features/mailbox/data/datasource/mailbox_datasource.dart';
import 'package:tmail_ui_user/features/mailbox/data/datasource/state_datasource.dart'; import 'package:tmail_ui_user/features/mailbox/data/datasource/state_datasource.dart';
import 'package:tmail_ui_user/features/mailbox/data/datasource_impl/mailbox_cache_datasource_impl.dart'; import 'package:tmail_ui_user/features/mailbox/data/datasource_impl/mailbox_cache_datasource_impl.dart';
@@ -92,15 +88,11 @@ class MailboxBindings extends BaseBindings {
@override @override
void bindingsRepository() { void bindingsRepository() {
Get.lazyPut<CredentialRepository>(() => Get.find<CredentialRepositoryImpl>());
Get.lazyPut<MailboxRepository>(() => Get.find<MailboxRepositoryImpl>()); Get.lazyPut<MailboxRepository>(() => Get.find<MailboxRepositoryImpl>());
} }
@override @override
void bindingsRepositoryImpl() { void bindingsRepositoryImpl() {
Get.lazyPut(() => CredentialRepositoryImpl(
Get.find<SharedPreferences>(),
Get.find<AuthenticationInfoCacheManager>()));
Get.lazyPut(() => MailboxRepositoryImpl( Get.lazyPut(() => MailboxRepositoryImpl(
{ {
DataSourceType.network: Get.find<MailboxDataSource>(), DataSourceType.network: Get.find<MailboxDataSource>(),
@@ -178,8 +178,9 @@ class MailboxDashBoardBindings extends BaseBindings {
Get.find<AccountRepository>(), Get.find<AccountRepository>(),
Get.find<AuthenticationOIDCRepository>(), Get.find<AuthenticationOIDCRepository>(),
)); ));
Get.lazyPut(() => DeleteAuthorityOidcInteractor(Get.find<AuthenticationOIDCRepository>())); Get.lazyPut(() => DeleteAuthorityOidcInteractor(
Get.lazyPut(() => GetCredentialInteractor(Get.find<CredentialRepository>())); Get.find<AuthenticationOIDCRepository>(),
Get.find<CredentialRepository>()));
Get.lazyPut(() => GetStoredTokenOidcInteractor( Get.lazyPut(() => GetStoredTokenOidcInteractor(
Get.find<AuthenticationOIDCRepository>(), Get.find<AuthenticationOIDCRepository>(),
Get.find<CredentialRepository>(), Get.find<CredentialRepository>(),
@@ -84,8 +84,9 @@ class ManageAccountDashBoardBindings extends BaseBindings {
Get.find<AccountRepository>(), Get.find<AccountRepository>(),
Get.find<AuthenticationOIDCRepository>(), Get.find<AuthenticationOIDCRepository>(),
)); ));
Get.lazyPut(() => DeleteAuthorityOidcInteractor(Get.find<AuthenticationOIDCRepository>())); Get.lazyPut(() => DeleteAuthorityOidcInteractor(
Get.lazyPut(() => GetCredentialInteractor(Get.find<CredentialRepository>())); Get.find<AuthenticationOIDCRepository>(),
Get.find<CredentialRepository>()));
Get.lazyPut(() => GetStoredTokenOidcInteractor( Get.lazyPut(() => GetStoredTokenOidcInteractor(
Get.find<AuthenticationOIDCRepository>(), Get.find<AuthenticationOIDCRepository>(),
Get.find<CredentialRepository>(), Get.find<CredentialRepository>(),
@@ -11,6 +11,7 @@ import 'package:tmail_ui_user/features/login/data/network/config/authorization_i
import 'package:tmail_ui_user/features/login/data/network/oidc_http_client.dart'; import 'package:tmail_ui_user/features/login/data/network/oidc_http_client.dart';
import 'package:tmail_ui_user/features/login/data/repository/authentication_oidc_repository_impl.dart'; import 'package:tmail_ui_user/features/login/data/repository/authentication_oidc_repository_impl.dart';
import 'package:tmail_ui_user/features/login/domain/repository/authentication_oidc_repository.dart'; import 'package:tmail_ui_user/features/login/domain/repository/authentication_oidc_repository.dart';
import 'package:tmail_ui_user/features/login/domain/repository/credential_repository.dart';
import 'package:tmail_ui_user/features/login/domain/usecases/delete_authority_oidc_interactor.dart'; import 'package:tmail_ui_user/features/login/domain/usecases/delete_authority_oidc_interactor.dart';
import 'package:tmail_ui_user/features/login/domain/usecases/delete_credential_interactor.dart'; import 'package:tmail_ui_user/features/login/domain/usecases/delete_credential_interactor.dart';
import 'package:tmail_ui_user/features/session/domain/usecases/get_session_interactor.dart'; import 'package:tmail_ui_user/features/session/domain/usecases/get_session_interactor.dart';
@@ -47,7 +48,9 @@ class SessionPageBindings extends BaseBindings {
@override @override
void bindingsInteractor() { void bindingsInteractor() {
Get.lazyPut(() => DeleteAuthorityOidcInteractor(Get.find<AuthenticationOIDCRepository>())); Get.lazyPut(() => DeleteAuthorityOidcInteractor(
Get.find<AuthenticationOIDCRepository>(),
Get.find<CredentialRepository>()));
} }
@override @override
@@ -3,6 +3,7 @@ import 'package:shared_preferences/shared_preferences.dart';
import 'package:tmail_ui_user/features/login/data/local/authentication_info_cache_manager.dart'; import 'package:tmail_ui_user/features/login/data/local/authentication_info_cache_manager.dart';
import 'package:tmail_ui_user/features/login/data/repository/credential_repository_impl.dart'; import 'package:tmail_ui_user/features/login/data/repository/credential_repository_impl.dart';
import 'package:tmail_ui_user/features/login/domain/repository/credential_repository.dart'; import 'package:tmail_ui_user/features/login/domain/repository/credential_repository.dart';
import 'package:tmail_ui_user/features/login/domain/usecases/delete_credential_interactor.dart';
import 'package:tmail_ui_user/features/login/domain/usecases/get_credential_interactor.dart'; import 'package:tmail_ui_user/features/login/domain/usecases/get_credential_interactor.dart';
class CredentialBindings extends Bindings { class CredentialBindings extends Bindings {
@@ -16,6 +17,7 @@ class CredentialBindings extends Bindings {
void bindingsInteractor() { void bindingsInteractor() {
Get.put(GetCredentialInteractor(Get.find<CredentialRepository>())); Get.put(GetCredentialInteractor(Get.find<CredentialRepository>()));
Get.put(DeleteCredentialInteractor(Get.find<CredentialRepository>()));
} }
void bindingsRepository() { void bindingsRepository() {
@@ -56,10 +56,8 @@ class LocalBindings extends Bindings {
Get.find<StateCacheClient>(), Get.find<StateCacheClient>(),
Get.find<EmailCacheClient>(), Get.find<EmailCacheClient>(),
Get.find<RecentSearchCacheClient>(), Get.find<RecentSearchCacheClient>(),
Get.find<TokenOidcCacheClient>(),
Get.find<AccountCacheClient>(), Get.find<AccountCacheClient>(),
Get.find<EncryptionKeyCacheClient>(), Get.find<EncryptionKeyCacheClient>(),
Get.find<AuthenticationInfoCacheClient>(),
)); ));
} }
} }
@@ -1,8 +1,6 @@
import 'package:core/core.dart'; import 'package:core/core.dart';
import 'package:get/get.dart'; import 'package:get/get.dart';
import 'package:tmail_ui_user/features/base/base_bindings.dart'; import 'package:tmail_ui_user/features/base/base_bindings.dart';
import 'package:tmail_ui_user/features/login/domain/repository/credential_repository.dart';
import 'package:tmail_ui_user/features/login/domain/usecases/delete_credential_interactor.dart';
import 'package:tmail_ui_user/features/session/data/datasource/session_datasource.dart'; import 'package:tmail_ui_user/features/session/data/datasource/session_datasource.dart';
import 'package:tmail_ui_user/features/session/data/datasource_impl/session_datasource_impl.dart'; import 'package:tmail_ui_user/features/session/data/datasource_impl/session_datasource_impl.dart';
import 'package:tmail_ui_user/features/session/data/network/session_api.dart'; import 'package:tmail_ui_user/features/session/data/network/session_api.dart';
@@ -31,7 +29,6 @@ class SessionBindings extends BaseBindings {
@override @override
void bindingsInteractor() { void bindingsInteractor() {
Get.put(GetSessionInteractor(Get.find<SessionRepository>())); Get.put(GetSessionInteractor(Get.find<SessionRepository>()));
Get.put(DeleteCredentialInteractor(Get.find<CredentialRepository>()));
} }
@override @override