TF-2102 Add restore_deleted_message interactors
(cherry picked from commit ba81255c213c49ecce7afdeca25a5cd7657c3816)
This commit is contained in:
@@ -0,0 +1,26 @@
|
||||
import 'dart:async';
|
||||
|
||||
import 'package:core/presentation/state/failure.dart';
|
||||
import 'package:core/presentation/state/success.dart';
|
||||
import 'package:dartz/dartz.dart';
|
||||
import 'package:email_recovery/email_recovery/email_recovery_action_id.dart';
|
||||
import 'package:tmail_ui_user/features/email/domain/repository/email_repository.dart';
|
||||
import 'package:tmail_ui_user/features/email/domain/state/get_restored_deleted_message_state.dart';
|
||||
|
||||
class GetRestoredDeletedMessageInterator {
|
||||
final EmailRepository _emailRepository;
|
||||
|
||||
GetRestoredDeletedMessageInterator(this._emailRepository);
|
||||
|
||||
Stream<Either<Failure, Success>> execute(
|
||||
EmailRecoveryActionId emailRecoveryActionId,
|
||||
) async* {
|
||||
try {
|
||||
yield Right<Failure, Success>(GetRestoredDeletedMessageLoading());
|
||||
final emailRecovery = await _emailRepository.getRestoredDeletedMessage(emailRecoveryActionId);
|
||||
yield Right<Failure, Success>(GetRestoredDeletedMessageSuccess(emailRecovery));
|
||||
} catch (e) {
|
||||
yield Left<Failure, Success>(GetRestoredDeletedMessageFailure(e));
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,26 @@
|
||||
import 'dart:async';
|
||||
|
||||
import 'package:core/presentation/state/failure.dart';
|
||||
import 'package:core/presentation/state/success.dart';
|
||||
import 'package:dartz/dartz.dart';
|
||||
import 'package:tmail_ui_user/features/email/domain/model/restore_deleted_message_request.dart';
|
||||
import 'package:tmail_ui_user/features/email/domain/repository/email_repository.dart';
|
||||
import 'package:tmail_ui_user/features/email/domain/state/restore_deleted_message_state.dart';
|
||||
|
||||
class RestoredDeletedMessageInteractor {
|
||||
final EmailRepository _emailRepository;
|
||||
|
||||
RestoredDeletedMessageInteractor(this._emailRepository);
|
||||
|
||||
Stream<Either<Failure, Success>> execute(
|
||||
RestoredDeletedMessageRequest newRecoveryRequest,
|
||||
) async* {
|
||||
try {
|
||||
yield Right<Failure, Success>(RestoreDeletedMessageLoading());
|
||||
final emailRecovery = await _emailRepository.restoreDeletedMessage(newRecoveryRequest);
|
||||
yield Right<Failure, Success>(RestoreDeletedMessageSuccess(emailRecovery));
|
||||
} catch (e) {
|
||||
yield Left<Failure, Success>(RestoreDeletedMessageFailure(e));
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user