Skip to content

Instantly share code, notes, and snippets.

@SAGARSURI
Created July 7, 2019 09:12
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save SAGARSURI/acfbd9bcad390f810f9d05318c2622e5 to your computer and use it in GitHub Desktop.
Save SAGARSURI/acfbd9bcad390f810f9d05318c2622e5 to your computer and use it in GitHub Desktop.
import '../resources/repository.dart';
import 'package:rxdart/rxdart.dart';
import '../models/item_model.dart';
import 'package:inject/inject.dart';
import 'bloc_base.dart';
class MoviesBloc extends BlocBase {
final Repository _repository;
PublishSubject<ItemModel> _moviesFetcher;
@provide
MoviesBloc(this._repository);
init(){
_moviesFetcher = PublishSubject<ItemModel>();
}
Observable<ItemModel> get allMovies => _moviesFetcher.stream;
fetchAllMovies() async {
ItemModel itemModel = await _repository.fetchAllMovies();
_moviesFetcher.sink.add(itemModel);
}
@override
dispose() {
_moviesFetcher.close();
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment