INNER CODE UNIT · Dart
BackgroundUseCase
ShadyBoukhary/flutter_clean_architecture · lib/src/background_usecase.dart:88
abstract class BackgroundUseCase<T, Params> extends UseCase<T, Params> {
BackgroundUseCaseState _state = BackgroundUseCaseState.idle;
late Isolate? _isolate;
final BehaviorSubject<T> _subject;
final ReceivePort _receivePort;
static late UseCaseTask _run;
BackgroundUseCase()
: assert(!kIsWeb, '''
[BackgroundUseCase] is not supported on web due to dart:isolate limitations.
'''),
_receivePort = ReceivePort(),
_subject = BehaviorSubject(),
super() {
_receivePort.listen(_handleMessage);
}
BackgroundUseCaseState get state => _state;