refactor(mobile): server info to use data classes instead of dtos (#4591)

* refactor: server info model to use data classes instead of dtos

* mobile: add return types and refactor private variables in map / stack

---------

Co-authored-by: shalong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
This commit is contained in:
shenlong 2023-10-22 20:15:34 +00:00 committed by GitHub
parent 9b418642a6
commit b05132a01a
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
15 changed files with 294 additions and 86 deletions

View file

@ -1,8 +1,11 @@
import 'package:flutter/material.dart';
import 'package:hooks_riverpod/hooks_riverpod.dart';
import 'package:immich_mobile/shared/models/server_info/server_config.model.dart';
import 'package:immich_mobile/shared/models/server_info/server_disk_info.model.dart';
import 'package:immich_mobile/shared/models/server_info/server_features.model.dart';
import 'package:immich_mobile/shared/models/server_info/server_version.model.dart';
import 'package:immich_mobile/shared/providers/api.provider.dart';
import 'package:immich_mobile/shared/services/api.service.dart';
import 'package:openapi/api.dart';
final serverInfoServiceProvider = Provider(
(ref) => ServerInfoService(
@ -15,39 +18,51 @@ class ServerInfoService {
ServerInfoService(this._apiService);
Future<ServerInfoResponseDto?> getServerInfo() async {
Future<ServerDiskInfo?> getServerInfo() async {
try {
return await _apiService.serverInfoApi.getServerInfo();
final dto = await _apiService.serverInfoApi.getServerInfo();
if (dto != null) {
return ServerDiskInfo.fromDto(dto);
}
} catch (e) {
debugPrint("Error [getServerInfo] ${e.toString()}");
return null;
}
return null;
}
Future<ServerVersionResponseDto?> getServerVersion() async {
Future<ServerVersion?> getServerVersion() async {
try {
return await _apiService.serverInfoApi.getServerVersion();
final dto = await _apiService.serverInfoApi.getServerVersion();
if (dto != null) {
return ServerVersion.fromDto(dto);
}
} catch (e) {
debugPrint("Error [getServerVersion] ${e.toString()}");
return null;
}
return null;
}
Future<ServerFeaturesDto?> getServerFeatures() async {
Future<ServerFeatures?> getServerFeatures() async {
try {
return await _apiService.serverInfoApi.getServerFeatures();
final dto = await _apiService.serverInfoApi.getServerFeatures();
if (dto != null) {
return ServerFeatures.fromDto(dto);
}
} catch (e) {
debugPrint("Error [getServerFeatures] ${e.toString()}");
return null;
}
return null;
}
Future<ServerConfigDto?> getServerConfig() async {
Future<ServerConfig?> getServerConfig() async {
try {
return await _apiService.serverInfoApi.getServerConfig();
final dto = await _apiService.serverInfoApi.getServerConfig();
if (dto != null) {
return ServerConfig.fromDto(dto);
}
} catch (e) {
debugPrint("Error [getServerConfig] ${e.toString()}");
return null;
}
return null;
}
}