diff --git a/lib/config/bloc_config.dart b/lib/config/bloc_config.dart index 06cb7244..2a42456c 100644 --- a/lib/config/bloc_config.dart +++ b/lib/config/bloc_config.dart @@ -1,7 +1,7 @@ import 'package:flutter/material.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:selfprivacy/logic/bloc/backups/backups_bloc.dart'; -import 'package:selfprivacy/logic/bloc/connection_status/connection_status_bloc.dart'; +import 'package:selfprivacy/logic/bloc/connection_status_bloc.dart'; import 'package:selfprivacy/logic/bloc/devices/devices_bloc.dart'; import 'package:selfprivacy/logic/bloc/recovery_key/recovery_key_bloc.dart'; import 'package:selfprivacy/logic/bloc/server_jobs/server_jobs_bloc.dart'; diff --git a/lib/logic/bloc/connection_status/connection_status_bloc.dart b/lib/logic/bloc/connection_status/connection_status_bloc.dart deleted file mode 100644 index 868f05d0..00000000 --- a/lib/logic/bloc/connection_status/connection_status_bloc.dart +++ /dev/null @@ -1,39 +0,0 @@ -import 'dart:async'; - -import 'package:equatable/equatable.dart'; -import 'package:flutter_bloc/flutter_bloc.dart'; -import 'package:selfprivacy/config/get_it_config.dart'; - -part 'connection_status_event.dart'; -part 'connection_status_state.dart'; - -class ConnectionStatusBloc - extends Bloc { - ConnectionStatusBloc() - : super( - const ConnectionStatusState( - connectionStatus: ConnectionStatus.nonexistent, - ), - ) { - on((final event, final emit) { - emit(ConnectionStatusState(connectionStatus: event.connectionStatus)); - }); - final apiConnectionRepository = getIt(); - _apiConnectionStatusSubscription = - apiConnectionRepository.connectionStatusStream.listen( - (final ConnectionStatus connectionStatus) { - add( - ConnectionStatusChanged(connectionStatus), - ); - }, - ); - } - - StreamSubscription? _apiConnectionStatusSubscription; - - @override - Future close() { - _apiConnectionStatusSubscription?.cancel(); - return super.close(); - } -} diff --git a/lib/logic/bloc/connection_status/connection_status_event.dart b/lib/logic/bloc/connection_status/connection_status_event.dart deleted file mode 100644 index 0fc6e72f..00000000 --- a/lib/logic/bloc/connection_status/connection_status_event.dart +++ /dev/null @@ -1,14 +0,0 @@ -part of 'connection_status_bloc.dart'; - -sealed class ConnectionStatusEvent extends Equatable { - const ConnectionStatusEvent(); -} - -class ConnectionStatusChanged extends ConnectionStatusEvent { - const ConnectionStatusChanged(this.connectionStatus); - - final ConnectionStatus connectionStatus; - - @override - List get props => [connectionStatus]; -} diff --git a/lib/logic/bloc/connection_status/connection_status_state.dart b/lib/logic/bloc/connection_status/connection_status_state.dart deleted file mode 100644 index 258765c1..00000000 --- a/lib/logic/bloc/connection_status/connection_status_state.dart +++ /dev/null @@ -1,12 +0,0 @@ -part of 'connection_status_bloc.dart'; - -class ConnectionStatusState extends Equatable { - const ConnectionStatusState({ - required this.connectionStatus, - }); - - final ConnectionStatus connectionStatus; - - @override - List get props => [connectionStatus]; -} diff --git a/lib/logic/bloc/connection_status_bloc.dart b/lib/logic/bloc/connection_status_bloc.dart new file mode 100644 index 00000000..f5315f46 --- /dev/null +++ b/lib/logic/bloc/connection_status_bloc.dart @@ -0,0 +1,27 @@ +import 'dart:async'; + +import 'package:flutter_bloc/flutter_bloc.dart'; +import 'package:selfprivacy/config/get_it_config.dart'; + +/// basically, a bus for other blocs to listen to server status updates +class ConnectionStatusBloc extends Bloc { + ConnectionStatusBloc() : super(ConnectionStatus.nonexistent) { + on( + (final newStatus, final emit) => emit(newStatus), + ); + + final apiConnectionRepository = getIt(); + _apiConnectionStatusSubscription = + apiConnectionRepository.connectionStatusStream.listen( + (final ConnectionStatus newStatus) => add(newStatus), + ); + } + + StreamSubscription? _apiConnectionStatusSubscription; + + @override + Future close() { + _apiConnectionStatusSubscription?.cancel(); + return super.close(); + } +}