Refactor TaskService to use SharedPreferencesService

This commit is contained in:
hunteraraujo
2023-10-10 12:35:34 -07:00
parent fc915d0469
commit 0eb476c3fa
2 changed files with 9 additions and 10 deletions

View File

@@ -47,9 +47,9 @@ void main() async {
update: (context, restApiUtility, chatService) =>
ChatService(restApiUtility),
),
ProxyProvider<RestApiUtility, TaskService>(
update: (context, restApiUtility, taskService) =>
TaskService(restApiUtility),
ProxyProvider2<RestApiUtility, SharedPreferencesService, TaskService>(
update: (context, restApiUtility, prefsService, taskService) =>
TaskService(restApiUtility, prefsService),
),
ProxyProvider<RestApiUtility, BenchmarkService>(
update: (context, restApiUtility, benchmarkService) =>

View File

@@ -1,15 +1,17 @@
import 'package:auto_gpt_flutter_client/models/task.dart';
import 'package:auto_gpt_flutter_client/models/task_request_body.dart';
import 'package:auto_gpt_flutter_client/models/task_response.dart';
import 'package:auto_gpt_flutter_client/services/shared_preferences_service.dart';
import 'package:auto_gpt_flutter_client/utils/rest_api_utility.dart';
import 'package:shared_preferences/shared_preferences.dart';
/// Service class for performing task-related operations.
class TaskService {
final RestApiUtility api;
final SharedPreferencesService prefsService;
List<String> _deletedTaskIds = [];
TaskService(this.api);
TaskService(this.api, this.prefsService);
/// Creates a new task.
///
@@ -84,17 +86,14 @@ class TaskService {
}
Future<void> loadDeletedTasks() async {
SharedPreferences prefs = await SharedPreferences.getInstance();
_deletedTaskIds = prefs.getStringList('deletedTasks') ?? [];
// Print out all deleted task IDs
_deletedTaskIds = await prefsService.getStringList('deletedTasks') ?? [];
print("Deleted tasks fetched successfully!");
}
void saveDeletedTask(String taskId) {
_deletedTaskIds.add(taskId);
SharedPreferences.getInstance()
.then((prefs) => prefs.setStringList('deletedTasks', _deletedTaskIds));
prefsService.setStringList('deletedTasks', _deletedTaskIds);
print("Task $taskId deleted successfully!");
}
bool isTaskDeleted(String taskId) {