Cache Linagora Ecosystem in controller for Scribe

This commit is contained in:
Théo Poizat
2026-03-03 08:46:13 +01:00
committed by Dat H. Pham
parent 3ebb9113bc
commit 32cf606aea
10 changed files with 72 additions and 75 deletions
@@ -1,20 +1,20 @@
import 'package:core/core.dart';
import 'package:dartz/dartz.dart';
import 'package:tmail_ui_user/features/mailbox_dashboard/domain/repository/linagora_ecosystem_repository.dart';
import 'package:tmail_ui_user/features/mailbox_dashboard/domain/state/get_scribe_prompt_url_state.dart';
import 'package:tmail_ui_user/features/mailbox_dashboard/domain/state/get_linagora_ecosystem_state.dart';
class GetScribePromptUrlInteractor {
class GetLinagoraEcosystemInteractor {
final LinagoraEcosystemRepository _linagoraEcosystemRepository;
GetScribePromptUrlInteractor(this._linagoraEcosystemRepository);
GetLinagoraEcosystemInteractor(this._linagoraEcosystemRepository);
Stream<Either<Failure, Success>> execute(String baseUrl) async* {
try {
final promptUrl = await _linagoraEcosystemRepository.getScribePromptUrl(baseUrl);
final linagoraEcosystem = await _linagoraEcosystemRepository.getLinagoraEcosystem(baseUrl);
yield Right(GetScribePromptUrlSuccess(promptUrl));
yield Right(GetLinagoraEcosystemSuccess(linagoraEcosystem));
} catch (e) {
yield Left(GetScribePromptUrlFailure(e));
yield Left(GetLinagoraEcosystemFailure(e));
}
}
}