[mob] refactor

This commit is contained in:
Neeraj Gupta 2024-10-17 14:09:18 +05:30
parent 54461453eb
commit 46e3faeb46
9 changed files with 45 additions and 40 deletions

View File

@ -37,7 +37,7 @@ import 'package:photos/services/file_magic_service.dart';
import 'package:photos/services/local_sync_service.dart';
import 'package:photos/services/remote_sync_service.dart';
import 'package:photos/utils/crypto_util.dart';
import 'package:photos/utils/file_download_util.dart';
import "package:photos/utils/file_key.dart";
import "package:photos/utils/local_settings.dart";
import 'package:shared_preferences/shared_preferences.dart';

View File

@ -17,7 +17,7 @@ import "package:photos/models/metadata/common_keys.dart";
import "package:photos/models/metadata/file_magic.dart";
import 'package:photos/services/remote_sync_service.dart';
import 'package:photos/utils/crypto_util.dart';
import 'package:photos/utils/file_download_util.dart';
import "package:photos/utils/file_key.dart";
class FileMagicService {
final _logger = Logger("FileMagicService");

View File

@ -9,7 +9,7 @@ import "package:photos/models/file/file.dart";
import "package:photos/services/filedata/model/enc_file_data.dart";
import "package:photos/services/filedata/model/file_data.dart";
import "package:photos/services/filedata/model/response.dart";
import "package:photos/utils/file_download_util.dart";
import "package:photos/utils/file_key.dart";
import "package:photos/utils/gzip.dart";
import "package:shared_preferences/shared_preferences.dart";

View File

@ -7,7 +7,7 @@ import 'package:photos/db/files_db.dart';
import 'package:photos/models/file/file.dart';
import "package:photos/models/metadata/file_magic.dart";
import 'package:photos/utils/crypto_util.dart';
import 'package:photos/utils/file_download_util.dart';
import "package:photos/utils/file_key.dart";
class DiffFetcher {
final _logger = Logger("DiffFetcher");

View File

@ -1,6 +1,5 @@
import 'dart:io';
import "package:computer/computer.dart";
import 'package:dio/dio.dart';
import "package:flutter/foundation.dart";
import 'package:logging/logging.dart';
@ -14,12 +13,12 @@ import "package:photos/events/local_photos_updated_event.dart";
import 'package:photos/models/file/file.dart';
import "package:photos/models/file/file_type.dart";
import "package:photos/models/ignored_file.dart";
import 'package:photos/services/collections_service.dart';
import "package:photos/services/ignored_files_service.dart";
import "package:photos/services/local_sync_service.dart";
import 'package:photos/utils/crypto_util.dart';
import "package:photos/utils/data_util.dart";
import "package:photos/utils/fake_progress.dart";
import "package:photos/utils/file_key.dart";
import "package:photos/utils/file_util.dart";
final _logger = Logger("file_download_util");
@ -104,27 +103,6 @@ Future<File?> downloadAndDecrypt(
}
}
Uint8List getFileKey(EnteFile file) {
final encryptedKey = CryptoUtil.base642bin(file.encryptedKey!);
final nonce = CryptoUtil.base642bin(file.keyDecryptionNonce!);
final collectionKey =
CollectionsService.instance.getCollectionKey(file.collectionID!);
return CryptoUtil.decryptSync(encryptedKey, collectionKey, nonce);
}
Future<Uint8List> getFileKeyUsingBgWorker(EnteFile file) async {
final collectionKey =
CollectionsService.instance.getCollectionKey(file.collectionID!);
return await Computer.shared().compute(
_decryptFileKey,
param: <String, dynamic>{
"encryptedKey": file.encryptedKey,
"keyDecryptionNonce": file.keyDecryptionNonce,
"collectionKey": collectionKey,
},
);
}
Future<void> downloadToGallery(EnteFile file) async {
try {
final FileType type = file.fileType;
@ -215,13 +193,3 @@ Future<void> _saveLivePhotoOnDroid(
);
await IgnoredFilesService.instance.cacheAndInsert([ignoreVideoFile]);
}
Uint8List _decryptFileKey(Map<String, dynamic> args) {
final encryptedKey = CryptoUtil.base642bin(args["encryptedKey"]);
final nonce = CryptoUtil.base642bin(args["keyDecryptionNonce"]);
return CryptoUtil.decryptSync(
encryptedKey,
args["collectionKey"],
nonce,
);
}

View File

@ -0,0 +1,37 @@
import "dart:typed_data";
import "package:computer/computer.dart";
import "package:photos/models/file/file.dart";
import "package:photos/services/collections_service.dart";
import "package:photos/utils/crypto_util.dart";
Uint8List getFileKey(EnteFile file) {
final encryptedKey = CryptoUtil.base642bin(file.encryptedKey!);
final nonce = CryptoUtil.base642bin(file.keyDecryptionNonce!);
final collectionKey =
CollectionsService.instance.getCollectionKey(file.collectionID!);
return CryptoUtil.decryptSync(encryptedKey, collectionKey, nonce);
}
Future<Uint8List> getFileKeyUsingBgWorker(EnteFile file) async {
final collectionKey =
CollectionsService.instance.getCollectionKey(file.collectionID!);
return await Computer.shared().compute(
_decryptFileKey,
param: <String, dynamic>{
"encryptedKey": file.encryptedKey,
"keyDecryptionNonce": file.keyDecryptionNonce,
"collectionKey": collectionKey,
},
);
}
Uint8List _decryptFileKey(Map<String, dynamic> args) {
final encryptedKey = CryptoUtil.base642bin(args["encryptedKey"]);
final nonce = CryptoUtil.base642bin(args["keyDecryptionNonce"]);
return CryptoUtil.decryptSync(
encryptedKey,
args["collectionKey"],
nonce,
);
}

View File

@ -38,7 +38,7 @@ import 'package:photos/services/local_sync_service.dart';
import 'package:photos/services/sync_service.dart';
import "package:photos/services/user_service.dart";
import 'package:photos/utils/crypto_util.dart';
import 'package:photos/utils/file_download_util.dart';
import "package:photos/utils/file_key.dart";
import 'package:photos/utils/file_uploader_util.dart';
import "package:photos/utils/file_util.dart";
import "package:photos/utils/network_util.dart";

View File

@ -13,7 +13,7 @@ import 'package:photos/core/errors.dart';
import 'package:photos/core/network/network.dart';
import 'package:photos/models/file/file.dart';
import 'package:photos/utils/crypto_util.dart';
import 'package:photos/utils/file_download_util.dart';
import "package:photos/utils/file_key.dart";
import 'package:photos/utils/file_uploader_util.dart';
import 'package:photos/utils/file_util.dart';

View File

@ -6,7 +6,7 @@ import 'package:photos/core/network/network.dart';
import 'package:photos/models/file/trash_file.dart';
import "package:photos/models/metadata/file_magic.dart";
import 'package:photos/utils/crypto_util.dart';
import 'package:photos/utils/file_download_util.dart';
import "package:photos/utils/file_key.dart";
class TrashDiffFetcher {
final _logger = Logger("TrashDiffFetcher");