Refactored methods to private

This commit is contained in:
2025-07-09 16:19:16 +02:00
parent 2d34ebf35b
commit ee5ec4d0d9

View File

@@ -21,7 +21,7 @@ class LocalStorageService {
static const String _fileName = 'game_data.json'; static const String _fileName = 'game_data.json';
/// Writes the game session list to a JSON file and returns it as string. /// Writes the game session list to a JSON file and returns it as string.
static String getGameDataAsJsonFile() { static String _getGameDataAsJsonFile() {
final jsonFile = final jsonFile =
gameManager.gameList.map((session) => session.toJson()).toList(); gameManager.gameList.map((session) => session.toJson()).toList();
return json.encode(jsonFile); return json.encode(jsonFile);
@@ -39,7 +39,7 @@ class LocalStorageService {
print('[local_storage_service.dart] Versuche, Daten zu speichern...'); print('[local_storage_service.dart] Versuche, Daten zu speichern...');
try { try {
final file = await _getFilePath(); final file = await _getFilePath();
final jsonFile = getGameDataAsJsonFile(); final jsonFile = _getGameDataAsJsonFile();
await file.writeAsString(jsonFile); await file.writeAsString(jsonFile);
print( print(
'[local_storage_service.dart] Die Spieldaten wurden zwischengespeichert.'); '[local_storage_service.dart] Die Spieldaten wurden zwischengespeichert.');
@@ -70,7 +70,7 @@ class LocalStorageService {
return false; return false;
} }
if (!await validateJsonSchema(jsonString, true)) { if (!await _validateJsonSchema(jsonString, true)) {
print( print(
'[local_storage_service.dart] Die Datei konnte nicht validiert werden'); '[local_storage_service.dart] Die Datei konnte nicht validiert werden');
gameManager.gameList = []; gameManager.gameList = [];
@@ -105,7 +105,7 @@ class LocalStorageService {
/// Opens the file picker to export game data as a JSON file. /// Opens the file picker to export game data as a JSON file.
/// This method will export the given [jsonString] as a JSON file. It opens /// This method will export the given [jsonString] as a JSON file. It opens
/// the file picker with the choosen [fileName]. /// the file picker with the choosen [fileName].
static Future<bool> exportJsonData( static Future<bool> _exportJsonData(
String jsonString, String jsonString,
String fileName, String fileName,
) async { ) async {
@@ -133,16 +133,16 @@ class LocalStorageService {
/// Opens the file picker to export all game sessions as a JSON file. /// Opens the file picker to export all game sessions as a JSON file.
static Future<bool> exportGameData() async { static Future<bool> exportGameData() async {
String jsonString = getGameDataAsJsonFile(); String jsonString = _getGameDataAsJsonFile();
String fileName = 'cabo_counter-game_data'; String fileName = 'cabo_counter-game_data';
return exportJsonData(jsonString, fileName); return _exportJsonData(jsonString, fileName);
} }
/// Opens the file picker to save a single game session as a JSON file. /// Opens the file picker to save a single game session as a JSON file.
static Future<bool> exportSingleGameSession(GameSession session) async { static Future<bool> exportSingleGameSession(GameSession session) async {
String jsonString = json.encode(session.toJson()); String jsonString = json.encode(session.toJson());
String fileName = 'cabo_counter-game_${session.id.substring(0, 7)}'; String fileName = 'cabo_counter-game_${session.id.substring(0, 7)}';
return exportJsonData(jsonString, fileName); return _exportJsonData(jsonString, fileName);
} }
/// Opens the file picker to import a JSON file and loads the game data from it. /// Opens the file picker to import a JSON file and loads the game data from it.
@@ -162,7 +162,7 @@ class LocalStorageService {
try { try {
final jsonString = await _readFileContent(path.files.single); final jsonString = await _readFileContent(path.files.single);
if (await validateJsonSchema(jsonString, true)) { if (await _validateJsonSchema(jsonString, true)) {
// Checks if the JSON String is in the gameList format // Checks if the JSON String is in the gameList format
final jsonData = json.decode(jsonString) as List<dynamic>; final jsonData = json.decode(jsonString) as List<dynamic>;
@@ -172,12 +172,12 @@ class LocalStorageService {
.toList(); .toList();
for (GameSession s in importedList) { for (GameSession s in importedList) {
importSession(s); _importSession(s);
} }
} else if (await validateJsonSchema(jsonString, false)) { } else if (await _validateJsonSchema(jsonString, false)) {
// Checks if the JSON String is in the single game format // Checks if the JSON String is in the single game format
final jsonData = json.decode(jsonString) as Map<String, dynamic>; final jsonData = json.decode(jsonString) as Map<String, dynamic>;
importSession(GameSession.fromJson(jsonData)); _importSession(GameSession.fromJson(jsonData));
} else { } else {
return ImportStatus.validationError; return ImportStatus.validationError;
} }
@@ -198,7 +198,7 @@ class LocalStorageService {
} }
/// Imports a single game session into the gameList. /// Imports a single game session into the gameList.
static Future<void> importSession(GameSession session) async { static Future<void> _importSession(GameSession session) async {
if (gameManager.gameExistsInGameList(session.id)) { if (gameManager.gameExistsInGameList(session.id)) {
print( print(
'[local_storage_service.dart] Die Session mit der ID ${session.id} existiert bereits. Sie wird überschrieben.'); '[local_storage_service.dart] Die Session mit der ID ${session.id} existiert bereits. Sie wird überschrieben.');
@@ -221,7 +221,7 @@ class LocalStorageService {
/// This method checks if the provided [jsonString] is valid against the /// This method checks if the provided [jsonString] is valid against the
/// JSON schema. It takes a boolean [isGameList] to determine /// JSON schema. It takes a boolean [isGameList] to determine
/// which schema to use (game list or single game). /// which schema to use (game list or single game).
static Future<bool> validateJsonSchema( static Future<bool> _validateJsonSchema(
String jsonString, bool isGameList) async { String jsonString, bool isGameList) async {
final String schemaString; final String schemaString;