Skip to content

Commit

Permalink
get bookmark repository from dependency injection
Browse files Browse the repository at this point in the history
  • Loading branch information
wuuzw committed Jan 20, 2021
1 parent 9ad26ed commit 9f67a29
Show file tree
Hide file tree
Showing 7 changed files with 10 additions and 12 deletions.
2 changes: 2 additions & 0 deletions lib/app/app_module.dart
Expand Up @@ -7,11 +7,13 @@ import 'app_widget.dart';
import 'modules/bookmarks/bookmark_module.dart';
import 'modules/home/home_module.dart';
import 'modules/item/item_module.dart';
import 'shared/repositories/bookmark_repository.dart';

class AppModule extends MainModule {
@override
List<Bind> get binds => [
$AppController,
$BookmarkRepository,
Bind((i) => Dio(BaseOptions(baseUrl: 'http://api.hackerwebapp.com'))),
];

Expand Down
8 changes: 4 additions & 4 deletions lib/app/modules/bookmarks/bookmark_controller.dart
Expand Up @@ -10,21 +10,21 @@ part 'bookmark_controller.g.dart';
class BookmarkController = _BookmarksControllerBase with _$BookmarkController;

abstract class _BookmarksControllerBase with Store {
final BookmarkRepository _repository;
final BookmarkRepository _bookmarksRepository = Modular.get();

_BookmarksControllerBase(this._repository);
_BookmarksControllerBase();

@observable
ObservableList<FeedItem> bookmarks = ObservableList<FeedItem>();

@action
Future<void> loadBookmarks() async {
bookmarks.addAll(await _repository.getAll());
bookmarks.addAll(await _bookmarksRepository.getAll());
}

@action
Future<void> deleteBookmark(FeedItem feedItem) async {
await _repository.delete(feedItem.key);
await _bookmarksRepository.delete(feedItem.key);
bookmarks.remove(feedItem);
}
}
2 changes: 1 addition & 1 deletion lib/app/modules/bookmarks/bookmark_controller.g.dart

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 0 additions & 2 deletions lib/app/modules/bookmarks/bookmark_module.dart
@@ -1,13 +1,11 @@
import 'package:flutter_modular/flutter_modular.dart';

import '../../shared/repositories/bookmark_repository.dart';
import 'bookmark_controller.dart';
import 'bookmark_page.dart';

class BookmarkModule extends ChildModule {
@override
List<Bind> get binds => [
$BookmarkRepository,
$BookmarkController,
];

Expand Down
4 changes: 2 additions & 2 deletions lib/app/modules/home/home_controller.dart
Expand Up @@ -13,7 +13,7 @@ class HomeController = _HomeControllerBase with _$HomeController;

abstract class _HomeControllerBase with Store {
final HomeRepository _repository;
final BookmarkRepository _bookmarksRepository;
final BookmarkRepository _bookmarksRepository = Modular.get();

int _currentPage = 1;
List<FeedItem> feedItems = [];
Expand All @@ -30,7 +30,7 @@ abstract class _HomeControllerBase with Store {
@observable
bool isLoadingNextPage = false;

_HomeControllerBase(this._repository, this._bookmarksRepository);
_HomeControllerBase(this._repository);

@action
Future<void> loadFeedItems() async {
Expand Down
2 changes: 1 addition & 1 deletion lib/app/modules/home/home_controller.g.dart

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 0 additions & 2 deletions lib/app/modules/home/home_module.dart
@@ -1,6 +1,5 @@
import 'package:flutter_modular/flutter_modular.dart';

import '../../shared/repositories/bookmark_repository.dart';
import 'home_controller.dart';
import 'home_page.dart';
import 'repository/home_repository.dart';
Expand All @@ -10,7 +9,6 @@ class HomeModule extends ChildModule {
List<Bind> get binds => [
$HomeController,
$HomeRepository,
$BookmarkRepository,
];

@override
Expand Down

0 comments on commit 9f67a29

Please sign in to comment.