TF-1808: Hanlde store email when opening email
(cherry picked from commit 2c895379f83b34e9bafb7545b21d790d01d444af)
This commit is contained in:
@@ -94,5 +94,5 @@ abstract class EmailRepository {
|
||||
|
||||
Future<void> storeEmailToCache(Session session, AccountId accountId, Email email);
|
||||
|
||||
Future<void> storeOpenedEmailToCache(Session session, AccountId accountId, DetailedEmail detailedEmail);
|
||||
Future<void> storeOpenedEmail(Session session, AccountId accountId, DetailedEmail detailedEmail);
|
||||
}
|
||||
@@ -1,12 +1,13 @@
|
||||
import 'package:core/core.dart';
|
||||
import 'package:core/presentation/state/failure.dart';
|
||||
import 'package:core/presentation/state/success.dart';
|
||||
|
||||
class StoreOpenedEmailToCacheLoading extends UIState {}
|
||||
class StoreOpenedEmailLoading extends UIState {}
|
||||
|
||||
class StoreOpenedEmailToCacheSuccess extends UIState {}
|
||||
class StoreOpenedEmailSuccess extends UIState {}
|
||||
|
||||
class StoreOpenedEmailToCacheFailure extends FeatureFailure {
|
||||
class StoreOpenedEmailFailure extends FeatureFailure {
|
||||
|
||||
StoreOpenedEmailToCacheFailure(dynamic exception) : super(exception: exception);
|
||||
StoreOpenedEmailFailure(dynamic exception) : super(exception: exception);
|
||||
|
||||
@override
|
||||
List<Object?> get props => [exception];
|
||||
|
||||
@@ -18,11 +18,11 @@ class StoreOpenedEmailToCacheInteractor {
|
||||
DetailedEmail detailedEmail
|
||||
) async* {
|
||||
try {
|
||||
yield Right<Failure, Success>(StoreOpenedEmailToCacheLoading());
|
||||
await _emailRepository.storeOpenedEmailToCache(session, accountId, detailedEmail);
|
||||
yield Right<Failure, Success>(StoreOpenedEmailToCacheSuccess());
|
||||
yield Right<Failure, Success>(StoreOpenedEmailLoading());
|
||||
await _emailRepository.storeOpenedEmail(session, accountId, detailedEmail);
|
||||
yield Right<Failure, Success>(StoreOpenedEmailSuccess());
|
||||
} catch (e) {
|
||||
yield Left<Failure, Success>(StoreOpenedEmailToCacheFailure(e));
|
||||
yield Left<Failure, Success>(StoreOpenedEmailFailure(e));
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user