Add an isEncrypted property to File

This commit is contained in:
Vishnu Mohandas 2020-08-13 02:12:00 +05:30
parent 746fb18cf7
commit 79e65f518d
3 changed files with 6 additions and 1 deletions

View file

@ -26,6 +26,7 @@ class FilesDB {
static final columnLongitude = 'longitude';
static final columnFileType = 'file_type';
static final columnRemoteFolderID = 'remote_folder_id';
static final columnIsEncrypted = 'is_encrypted';
static final columnIsDeleted = 'is_deleted';
static final columnCreationTime = 'creation_time';
static final columnModificationTime = 'modification_time';
@ -66,6 +67,7 @@ class FilesDB {
$columnLongitude REAL,
$columnFileType INTEGER,
$columnRemoteFolderID INTEGER,
$columnIsEncrypted INTEGER DEFAULT 0,
$columnIsDeleted INTEGER DEFAULT 0,
$columnCreationTime TEXT NOT NULL,
$columnModificationTime TEXT NOT NULL,
@ -357,6 +359,7 @@ class FilesDB {
default:
row[columnFileType] = -1;
}
row[columnIsEncrypted] = file.isEncrypted ? 1 : 0;
row[columnRemoteFolderID] = file.remoteFolderID;
row[columnCreationTime] = file.creationTime;
row[columnModificationTime] = file.modificationTime;
@ -377,6 +380,7 @@ class FilesDB {
}
file.fileType = getFileType(row[columnFileType]);
file.remoteFolderID = row[columnRemoteFolderID];
file.isEncrypted = int.parse(row[columnIsEncrypted]) == 1;
file.creationTime = int.parse(row[columnCreationTime]);
file.modificationTime = int.parse(row[columnModificationTime]);
file.updationTime = row[columnUpdationTime] == null

View file

@ -8,7 +8,6 @@ import 'package:path/path.dart';
import 'package:photos/core/configuration.dart';
import 'package:photos/models/file_type.dart';
import 'package:photos/models/location.dart';
import 'package:photos/utils/crypto_util.dart';
class File {
int generatedID;
@ -18,6 +17,7 @@ class File {
String title;
String deviceFolder;
int remoteFolderID;
bool isEncrypted;
int creationTime;
int modificationTime;
int updationTime;

View file

@ -284,6 +284,7 @@ class PhotoSyncManager {
file.uploadedFileID = json["id"];
file.ownerID = json["ownerID"];
file.updationTime = json["updationTime"];
file.isEncrypted = true;
Map<String, dynamic> metadata = jsonDecode(CryptoUtil.decryptFromBase64(
json["metadata"],
Configuration.instance.getKey(),