TF-1180 Reorganize inject and get interactor
This commit is contained in:
@@ -119,7 +119,7 @@ abstract class BaseController extends GetxController
|
|||||||
requireCapability(session!, accountId!, [CapabilityIdentifier.jmapMdn]);
|
requireCapability(session!, accountId!, [CapabilityIdentifier.jmapMdn]);
|
||||||
MdnInteractorBindings().dependencies();
|
MdnInteractorBindings().dependencies();
|
||||||
} catch(e) {
|
} catch(e) {
|
||||||
logError('ReloadableController::injectVacationBindings(): exception: $e');
|
logError('BaseController::injectMdnBindings(): exception: $e');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -128,7 +128,7 @@ abstract class BaseController extends GetxController
|
|||||||
requireCapability(session!, accountId!, [capabilityForward]);
|
requireCapability(session!, accountId!, [capabilityForward]);
|
||||||
ForwardingInteractorsBindings().dependencies();
|
ForwardingInteractorsBindings().dependencies();
|
||||||
} catch(e) {
|
} catch(e) {
|
||||||
logError('ReloadableController::injectForwardBindings(): exception: $e');
|
logError('BaseController::injectForwardBindings(): exception: $e');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -137,7 +137,7 @@ abstract class BaseController extends GetxController
|
|||||||
requireCapability(session!, accountId!, [capabilityRuleFilter]);
|
requireCapability(session!, accountId!, [capabilityRuleFilter]);
|
||||||
EmailRulesInteractorBindings().dependencies();
|
EmailRulesInteractorBindings().dependencies();
|
||||||
} catch(e) {
|
} catch(e) {
|
||||||
logError('ReloadableController::injectRuleFilterBindings(): exception: $e');
|
logError('BaseController::injectRuleFilterBindings(): exception: $e');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -102,7 +102,7 @@ class SingleEmailController extends BaseController with AppLoaderMixin {
|
|||||||
EmailId? _currentEmailId;
|
EmailId? _currentEmailId;
|
||||||
Identity? _identitySelected;
|
Identity? _identitySelected;
|
||||||
List<EmailContent>? initialEmailContents;
|
List<EmailContent>? initialEmailContents;
|
||||||
late Worker emailWorker;
|
late Worker emailWorker, accountIdWorker;
|
||||||
final Debouncer<int?> _getEmailDeBouncer = Debouncer<int?>(
|
final Debouncer<int?> _getEmailDeBouncer = Debouncer<int?>(
|
||||||
const Duration(milliseconds: 800),
|
const Duration(milliseconds: 800),
|
||||||
initialValue: null,
|
initialValue: null,
|
||||||
@@ -134,31 +134,9 @@ class SingleEmailController extends BaseController with AppLoaderMixin {
|
|||||||
_initializeDebounceTimeIndexPageViewChange();
|
_initializeDebounceTimeIndexPageViewChange();
|
||||||
_registerListenerWorker();
|
_registerListenerWorker();
|
||||||
_listenDownloadAttachmentProgressState();
|
_listenDownloadAttachmentProgressState();
|
||||||
injectRuleFilterBindings(
|
|
||||||
emailSupervisorController.sessionCurrent,
|
|
||||||
emailSupervisorController.accountId);
|
|
||||||
try {
|
|
||||||
_createNewEmailRuleFilterInteractor = Get.find<CreateNewEmailRuleFilterInteractor>();
|
|
||||||
} catch (e) {
|
|
||||||
logError('SingleEmailController::onInit(): ${e.toString()}');
|
|
||||||
}
|
|
||||||
super.onInit();
|
super.onInit();
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
|
||||||
void onReady() {
|
|
||||||
injectMdnBindings(
|
|
||||||
emailSupervisorController.sessionCurrent,
|
|
||||||
emailSupervisorController.accountId,
|
|
||||||
);
|
|
||||||
try {
|
|
||||||
_sendReceiptToSenderInteractor = Get.find<SendReceiptToSenderInteractor>();
|
|
||||||
} catch (e) {
|
|
||||||
logError('SingleEmailController::onReady(): SendReceiptToSenderInteractor not registered');
|
|
||||||
}
|
|
||||||
super.onReady();
|
|
||||||
}
|
|
||||||
|
|
||||||
@override
|
@override
|
||||||
void onClose() {
|
void onClose() {
|
||||||
_downloadProgressStateController.close();
|
_downloadProgressStateController.close();
|
||||||
@@ -176,6 +154,15 @@ class SingleEmailController extends BaseController with AppLoaderMixin {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void _registerListenerWorker() {
|
void _registerListenerWorker() {
|
||||||
|
accountIdWorker = ever(mailboxDashBoardController.accountId, (accountId) {
|
||||||
|
if (accountId is AccountId) {
|
||||||
|
_injectAndGetInteractorBindings(
|
||||||
|
mailboxDashBoardController.sessionCurrent,
|
||||||
|
accountId
|
||||||
|
);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
emailWorker = ever(emailSupervisorController.selectedEmail, (presentationEmail) {
|
emailWorker = ever(emailSupervisorController.selectedEmail, (presentationEmail) {
|
||||||
log('SingleEmailController::_initWorker(): $presentationEmail');
|
log('SingleEmailController::_initWorker(): $presentationEmail');
|
||||||
if (presentationEmail is PresentationEmail) {
|
if (presentationEmail is PresentationEmail) {
|
||||||
@@ -242,6 +229,18 @@ class SingleEmailController extends BaseController with AppLoaderMixin {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void _injectAndGetInteractorBindings(Session? session, AccountId accountId) {
|
||||||
|
injectRuleFilterBindings(session, accountId);
|
||||||
|
injectMdnBindings(session, accountId);
|
||||||
|
|
||||||
|
if (Get.isRegistered<CreateNewEmailRuleFilterInteractor>()) {
|
||||||
|
_createNewEmailRuleFilterInteractor = Get.find<CreateNewEmailRuleFilterInteractor>();
|
||||||
|
}
|
||||||
|
if (Get.isRegistered<SendReceiptToSenderInteractor>()) {
|
||||||
|
_sendReceiptToSenderInteractor = Get.find<SendReceiptToSenderInteractor>();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void _getAllIdentities() {
|
void _getAllIdentities() {
|
||||||
final accountId = emailSupervisorController.accountId;
|
final accountId = emailSupervisorController.accountId;
|
||||||
if (accountId != null) {
|
if (accountId != null) {
|
||||||
|
|||||||
Reference in New Issue
Block a user