Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 12 additions & 0 deletions Shared/Extensions/Error.swift
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,18 @@ extension Error {
}

func getErrorDescription() -> String {
if let enrichedError = self as? EnrichedError {
var parts = ["[\(enrichedError.code.rawValue)]", "Step: \(enrichedError.step.rawValue)"]
if !enrichedError.context.isEmpty {
let contextStr = enrichedError.context.map { "\($0.key): \($0.value)" }.joined(separator: ", ")
parts.append("| \(contextStr)")
}
if let cause = enrichedError.cause {
parts.append("| Cause: \(cause.getErrorDescription())")
}
return parts.joined(separator: " ")
}

if let apiClientError = self as? APIClientError {
let parts = [
"APIClientError \(apiClientError.statusCode)",
Expand Down
2 changes: 1 addition & 1 deletion Shared/Models/SyncedNode.swift
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ class SyncedNode: Object {
self.remoteId = remoteId
self.remoteUuid = remoteUuid
self.url = url.absoluteString
self.rootBackupFolder = url.absoluteString
self.rootBackupFolder = rootBackupFolder.absoluteString
self.parentId = parentId
self.remoteParentId = remoteParentId
self.createdAt = Date()
Expand Down
18 changes: 8 additions & 10 deletions Shared/Services/Backups/BackupsService.swift
Original file line number Diff line number Diff line change
Expand Up @@ -134,14 +134,16 @@ class BackupsService: ObservableObject {
throw BackupError.folderToBackupRealmObjectNotFound
}

let folderUrl = folderToBackupRealmObject.url

try realm.write {
realm.delete(folderToBackupRealmObject)
}


self.loadFoldersToBackup()

//try await self.cleanBackupLocalData(folderUrl: folderToBackupRealmObject.url, realm: realm)
try self.cleanBackupLocalData(folderUrl: folderUrl)
//try await backupAPI.deleteBackupFolder(folderId: folderToBackupRealmObject.id, debug: true)

await self.loadAllDevices()
Expand Down Expand Up @@ -366,16 +368,12 @@ class BackupsService: ObservableObject {
return true
}

@MainActor private func cleanBackupLocalData(folderUrl: String, realm: Realm) async throws -> Void {
// TODO: Make sure we clean all the RealmDB local data
/* guard let syncedNode = realm.objects(SyncedNode.self).first(where: { node in
node.url == folderUrl
}) else {

return true
private func cleanBackupLocalData(folderUrl: String) throws -> Void {
let realm = getRealm()
let syncedNodesToDelete = realm.objects(SyncedNode.self).filter("url BEGINSWITH[c] %@", folderUrl)
try realm.write {
realm.delete(syncedNodesToDelete)
}

return false */
}

func getDeviceFolders(deviceId: Int) async throws -> [GetFolderFoldersResult] {
Expand Down