TF-657 Separate interactor/repository/datasource of identity

This commit is contained in:
dab246
2022-10-19 17:53:34 +07:00
committed by Dat H. Pham
parent 9a5fa29035
commit 398654a79d
26 changed files with 353 additions and 313 deletions
@@ -1,41 +0,0 @@
import 'package:get/get.dart';
import 'package:tmail_ui_user/features/base/base_bindings.dart';
import 'package:tmail_ui_user/features/manage_account/domain/repository/manage_account_repository.dart';
import 'package:tmail_ui_user/features/manage_account/domain/usecases/create_new_identity_interactor.dart';
import 'package:tmail_ui_user/features/manage_account/domain/usecases/delete_identity_interactor.dart';
import 'package:tmail_ui_user/features/manage_account/domain/usecases/edit_identity_interactor.dart';
import 'package:tmail_ui_user/features/manage_account/domain/usecases/get_all_identities_interactor.dart';
import 'package:tmail_ui_user/features/manage_account/presentation/profiles/identities/identities_controller.dart';
class IdentitiesBindings extends BaseBindings {
@override
void bindingsController() {
Get.lazyPut(() => IdentitiesController(
Get.find<GetAllIdentitiesInteractor>(),
Get.find<DeleteIdentityInteractor>(),
Get.find<CreateNewIdentityInteractor>(),
Get.find<EditIdentityInteractor>(),
));
}
@override
void bindingsDataSource() {}
@override
void bindingsDataSourceImpl() {}
@override
void bindingsInteractor() {
Get.lazyPut(() => GetAllIdentitiesInteractor(Get.find<ManageAccountRepository>()));
Get.lazyPut(() => CreateNewIdentityInteractor(Get.find<ManageAccountRepository>()));
Get.lazyPut(() => DeleteIdentityInteractor(Get.find<ManageAccountRepository>()));
Get.lazyPut(() => EditIdentityInteractor(Get.find<ManageAccountRepository>()));
}
@override
void bindingsRepository() {}
@override
void bindingsRepositoryImpl() {}
}
@@ -0,0 +1,22 @@
import 'package:get/get.dart';
import 'package:tmail_ui_user/features/manage_account/domain/usecases/create_new_identity_interactor.dart';
import 'package:tmail_ui_user/features/manage_account/domain/usecases/delete_identity_interactor.dart';
import 'package:tmail_ui_user/features/manage_account/domain/usecases/edit_identity_interactor.dart';
import 'package:tmail_ui_user/features/manage_account/domain/usecases/get_all_identities_interactor.dart';
import 'package:tmail_ui_user/features/manage_account/presentation/profiles/identities/identities_controller.dart';
import 'package:tmail_ui_user/features/manage_account/presentation/profiles/identities/identity_interactors_bindings.dart';
class IdentityBindings extends Bindings {
@override
void dependencies() {
IdentityInteractorsBindings().dependencies();
Get.lazyPut(() => IdentitiesController(
Get.find<GetAllIdentitiesInteractor>(),
Get.find<DeleteIdentityInteractor>(),
Get.find<CreateNewIdentityInteractor>(),
Get.find<EditIdentityInteractor>(),
));
}
}
@@ -0,0 +1,42 @@
import 'package:get/get.dart';
import 'package:tmail_ui_user/features/base/interactors_bindings.dart';
import 'package:tmail_ui_user/features/manage_account/data/datasource/identity_data_source.dart';
import 'package:tmail_ui_user/features/manage_account/data/datasource_impl/identity_data_source_impl.dart';
import 'package:tmail_ui_user/features/manage_account/data/network/identity_api.dart';
import 'package:tmail_ui_user/features/manage_account/data/repository/identity_repository_impl.dart';
import 'package:tmail_ui_user/features/manage_account/domain/repository/identity_repository.dart';
import 'package:tmail_ui_user/features/manage_account/domain/usecases/create_new_identity_interactor.dart';
import 'package:tmail_ui_user/features/manage_account/domain/usecases/delete_identity_interactor.dart';
import 'package:tmail_ui_user/features/manage_account/domain/usecases/edit_identity_interactor.dart';
import 'package:tmail_ui_user/features/manage_account/domain/usecases/get_all_identities_interactor.dart';
class IdentityInteractorsBindings extends InteractorsBindings {
@override
void bindingsDataSource() {
Get.lazyPut<IdentityDataSource>(() => Get.find<IdentityDataSourceImpl>());
}
@override
void bindingsDataSourceImpl() {
Get.lazyPut(() => IdentityDataSourceImpl(Get.find<IdentityAPI>()));
}
@override
void bindingsInteractor() {
Get.lazyPut(() => GetAllIdentitiesInteractor(Get.find<IdentityRepository>()));
Get.lazyPut(() => CreateNewIdentityInteractor(Get.find<IdentityRepository>()));
Get.lazyPut(() => DeleteIdentityInteractor(Get.find<IdentityRepository>()));
Get.lazyPut(() => EditIdentityInteractor(Get.find<IdentityRepository>()));
}
@override
void bindingsRepository() {
Get.lazyPut<IdentityRepository>(() => Get.find<IdentityRepositoryImpl>());
}
@override
void bindingsRepositoryImpl() {
Get.lazyPut(() => IdentityRepositoryImpl(Get.find<IdentityDataSource>()));
}
}
@@ -1,6 +1,6 @@
import 'package:get/get.dart';
import 'package:tmail_ui_user/features/base/base_bindings.dart';
import 'package:tmail_ui_user/features/manage_account/presentation/profiles/identities/identities_bindings.dart';
import 'package:tmail_ui_user/features/manage_account/presentation/profiles/identities/identity_bindings.dart';
import 'package:tmail_ui_user/features/manage_account/presentation/profiles/profiles_controller.dart';
class ProfileBindings extends BaseBindings {
@@ -8,7 +8,7 @@ class ProfileBindings extends BaseBindings {
@override
void dependencies() {
super.dependencies();
IdentitiesBindings().dependencies();
IdentityBindings().dependencies();
}
@override