feat: Restructure providers and repositories (WIP, not compiling)

This commit is contained in:
Anton Stubenbord
2023-04-30 20:49:36 +02:00
parent 4e87a196f9
commit 88085b5662
14 changed files with 776 additions and 269 deletions

View File

@@ -0,0 +1,10 @@
import 'package:dio/dio.dart';
import 'package:paperless_api/paperless_api.dart';
abstract class PaperlessApiFactory {
PaperlessDocumentsApi createDocumentsApi(Dio dio, {required int apiVersion});
PaperlessSavedViewsApi createSavedViewsApi(Dio dio, {required int apiVersion});
PaperlessLabelsApi createLabelsApi(Dio dio, {required int apiVersion});
PaperlessServerStatsApi createServerStatsApi(Dio dio, {required int apiVersion});
PaperlessTasksApi createTasksApi(Dio dio, {required int apiVersion});
}

View File

@@ -0,0 +1,35 @@
import 'package:dio/dio.dart';
import 'package:paperless_api/paperless_api.dart';
import 'package:paperless_mobile/core/factory/paperless_api_factory.dart';
import 'package:paperless_mobile/core/security/session_manager.dart';
class PaperlessApiFactoryImpl implements PaperlessApiFactory {
final SessionManager sessionManager;
PaperlessApiFactoryImpl(this.sessionManager);
@override
PaperlessDocumentsApi createDocumentsApi(Dio dio, {required int apiVersion}) {
return PaperlessDocumentsApiImpl(dio);
}
@override
PaperlessLabelsApi createLabelsApi(Dio dio, {required int apiVersion}) {
return PaperlessLabelApiImpl(dio);
}
@override
PaperlessSavedViewsApi createSavedViewsApi(Dio dio, {required int apiVersion}) {
return PaperlessSavedViewsApiImpl(dio);
}
@override
PaperlessServerStatsApi createServerStatsApi(Dio dio, {required int apiVersion}) {
return PaperlessServerStatsApiImpl(dio);
}
@override
PaperlessTasksApi createTasksApi(Dio dio, {required int apiVersion}) {
return PaperlessTasksApiImpl(dio);
}
}