TF-1606 Convert apiUrl to qualified url

(cherry picked from commit f446fd598dfcdc0dfd041419a8a5f709606a4605)
This commit is contained in:
dab246
2023-03-20 17:08:41 +07:00
committed by Dat Vu
parent 29219eb14e
commit 009ab2b889
3 changed files with 19 additions and 6 deletions
@@ -1,4 +1,5 @@
import 'package:core/data/network/config/dynamic_url_interceptors.dart';
import 'package:core/presentation/extensions/uri_extension.dart';
import 'package:core/presentation/state/failure.dart';
import 'package:core/presentation/state/success.dart';
import 'package:core/utils/app_logger.dart';
@@ -109,7 +110,11 @@ abstract class ReloadableController extends BaseController {
}
void _handleGetSessionSuccess(GetSessionSuccess success) {
final apiUrl = success.session.apiUrl.toString();
final jmapUrl = _dynamicUrlInterceptors.jmapUrl;
final apiUrl = jmapUrl != null
? success.session.apiUrl.toQualifiedUrl(baseUrl: Uri.parse(jmapUrl)).toString()
: success.session.apiUrl.toString();
log('ReloadableController::_handleGetSessionSuccess():apiUrl: $apiUrl');
if (apiUrl.isNotEmpty) {
_dynamicUrlInterceptors.changeBaseUrl(apiUrl);
updateAuthenticationAccount(success.session, success.session.accounts.keys.first);
@@ -146,10 +151,13 @@ abstract class ReloadableController extends BaseController {
}
}
void updateAuthenticationAccount(Session? session, AccountId? accountId) {
final apiUrl = session?.apiUrl.toString() ?? '';
void updateAuthenticationAccount(Session session, AccountId accountId) {
final jmapUrl = _dynamicUrlInterceptors.jmapUrl;
final apiUrl = jmapUrl != null
? session.apiUrl.toQualifiedUrl(baseUrl: Uri.parse(jmapUrl)).toString()
: session.apiUrl.toString();
log('ReloadableController::updateAuthenticationAccount():apiUrl: $apiUrl');
if (accountId != null && apiUrl.isNotEmpty) {
if (apiUrl.isNotEmpty) {
consumeState(_updateAuthenticationAccountInteractor.execute(accountId, apiUrl));
}
}
@@ -425,7 +425,7 @@ class MailboxDashBoardController extends ReloadableController {
sessionCurrent = arguments;
accountId.value = sessionCurrent?.accounts.keys.first;
_getUserProfile();
updateAuthenticationAccount(sessionCurrent, accountId.value);
updateAuthenticationAccount(sessionCurrent!, accountId.value!);
injectAutoCompleteBindings(sessionCurrent, accountId.value);
injectRuleFilterBindings(sessionCurrent, accountId.value);
injectVacationBindings(sessionCurrent, accountId.value);
@@ -1,4 +1,5 @@
import 'package:core/data/network/config/dynamic_url_interceptors.dart';
import 'package:core/presentation/extensions/uri_extension.dart';
import 'package:core/presentation/state/failure.dart';
import 'package:core/presentation/utils/app_toast.dart';
import 'package:core/utils/app_logger.dart';
@@ -106,7 +107,11 @@ class SessionController extends ReloadableController {
}
void _goToMailboxDashBoard(GetSessionSuccess success) {
final apiUrl = success.session.apiUrl.toString();
final jmapUrl = _dynamicUrlInterceptors.jmapUrl;
final apiUrl = jmapUrl != null
? success.session.apiUrl.toQualifiedUrl(baseUrl: Uri.parse(jmapUrl)).toString()
: success.session.apiUrl.toString();
log('SessionController::_goToMailboxDashBoard():apiUrl: $apiUrl');
if (apiUrl.isNotEmpty) {
_dynamicUrlInterceptors.changeBaseUrl(apiUrl);
pushAndPop(