fix(notification): port the new usecase syntax
This commit is contained in:
parent
d217a202cb
commit
283bf80243
@ -17,12 +17,12 @@
|
|||||||
import 'package:wyatt_architecture/wyatt_architecture.dart';
|
import 'package:wyatt_architecture/wyatt_architecture.dart';
|
||||||
import 'package:wyatt_cloud_messaging_bloc_base/src/domain/repositories/cloud_messaging_repository.dart';
|
import 'package:wyatt_cloud_messaging_bloc_base/src/domain/repositories/cloud_messaging_repository.dart';
|
||||||
|
|
||||||
class InitCloudmessagingUseCase extends AsyncUseCase<NoParam, void> {
|
class InitCloudmessagingUseCase extends NoParamsAsyncUseCase<void> {
|
||||||
InitCloudmessagingUseCase({
|
InitCloudmessagingUseCase({
|
||||||
required CloudMessagingRepository notificationRepository,
|
required CloudMessagingRepository notificationRepository,
|
||||||
}) : _notificationRepository = notificationRepository;
|
}) : _notificationRepository = notificationRepository;
|
||||||
final CloudMessagingRepository _notificationRepository;
|
final CloudMessagingRepository _notificationRepository;
|
||||||
@override
|
@override
|
||||||
FutureOrResult<void> execute(NoParam? params) =>
|
FutureOrResult<void> execute() =>
|
||||||
_notificationRepository.init();
|
_notificationRepository.init();
|
||||||
}
|
}
|
||||||
|
@ -24,13 +24,13 @@ import 'package:wyatt_cloud_messaging_bloc_base/src/domain/repositories/cloud_me
|
|||||||
import 'package:wyatt_type_utils/wyatt_type_utils.dart';
|
import 'package:wyatt_type_utils/wyatt_type_utils.dart';
|
||||||
|
|
||||||
class ListenNotificationUseCase
|
class ListenNotificationUseCase
|
||||||
extends StreamUseCase<NoParam, RemoteNotification> {
|
extends NoParamsAsyncUseCase<Stream<RemoteNotification>> {
|
||||||
ListenNotificationUseCase({
|
ListenNotificationUseCase({
|
||||||
required CloudMessagingRepository notificationRepository,
|
required CloudMessagingRepository notificationRepository,
|
||||||
}) : _notificationRepository = notificationRepository;
|
}) : _notificationRepository = notificationRepository;
|
||||||
final CloudMessagingRepository _notificationRepository;
|
final CloudMessagingRepository _notificationRepository;
|
||||||
@override
|
@override
|
||||||
FutureOrResult<Stream<RemoteNotification>> execute(NoParam? params) async {
|
FutureOrResult<Stream<RemoteNotification>> execute() async {
|
||||||
Stream<RemoteNotification>? notificationStream;
|
Stream<RemoteNotification>? notificationStream;
|
||||||
|
|
||||||
final notificationStreamResponse =
|
final notificationStreamResponse =
|
||||||
@ -66,7 +66,7 @@ class ListenNotificationUseCase
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (notificationStream == null) {
|
if (notificationStream == null) {
|
||||||
return const Err(NotificationException('Cannot listen notifications'));
|
return Err(const NotificationException('Cannot listen notifications'));
|
||||||
}
|
}
|
||||||
|
|
||||||
return Ok(notificationStream);
|
return Ok(notificationStream);
|
||||||
|
@ -18,11 +18,9 @@ import 'dart:async';
|
|||||||
|
|
||||||
import 'package:equatable/equatable.dart';
|
import 'package:equatable/equatable.dart';
|
||||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||||
import 'package:wyatt_architecture/wyatt_architecture.dart';
|
|
||||||
import 'package:wyatt_cloud_messaging_bloc_base/src/domain/entities/remote_notifications.dart';
|
import 'package:wyatt_cloud_messaging_bloc_base/src/domain/entities/remote_notifications.dart';
|
||||||
import 'package:wyatt_cloud_messaging_bloc_base/src/domain/usecases/listen_notification_use_case.dart';
|
import 'package:wyatt_cloud_messaging_bloc_base/src/domain/usecases/listen_notification_use_case.dart';
|
||||||
import 'package:wyatt_cloud_messaging_bloc_base/src/domain/usecases/subscribe_to_notification_topic_use_case.dart';
|
import 'package:wyatt_cloud_messaging_bloc_base/src/domain/usecases/subscribe_to_notification_topic_use_case.dart';
|
||||||
|
|
||||||
import 'package:wyatt_cloud_messaging_bloc_base/src/domain/usecases/unsubscribe_from_notification_topic_use_case.dart';
|
import 'package:wyatt_cloud_messaging_bloc_base/src/domain/usecases/unsubscribe_from_notification_topic_use_case.dart';
|
||||||
|
|
||||||
part 'cloud_messaging_state.dart';
|
part 'cloud_messaging_state.dart';
|
||||||
@ -46,7 +44,7 @@ class CloudMessagingCubit extends Cubit<CloudmessagingState> {
|
|||||||
final OnNotification? handleNotification;
|
final OnNotification? handleNotification;
|
||||||
|
|
||||||
Future<void> listenNotification() async {
|
Future<void> listenNotification() async {
|
||||||
final notificaitons = await _listenNotification.execute(const NoParam());
|
final notificaitons = await _listenNotification.execute();
|
||||||
if (notificaitons.isOk) {
|
if (notificaitons.isOk) {
|
||||||
notificaitons.ok?.listen((notification) {
|
notificaitons.ok?.listen((notification) {
|
||||||
emit(CloudmessagingState(notification));
|
emit(CloudmessagingState(notification));
|
||||||
|
Loading…
x
Reference in New Issue
Block a user