From: Claudio Cambra Date: Fri, 10 Mar 2023 00:06:18 +0000 (+0100) Subject: Add method to get all directory metadatas in database manager X-Git-Tag: archive/raspbian/3.16.7-1_deb13u1+rpi1~1^2~12^2~10^2~55^2~183 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=24b328f57b961bd8a7686fdc5251d2a85f8b84cc;p=nextcloud-desktop.git Add method to get all directory metadatas in database manager Signed-off-by: Claudio Cambra --- diff --git a/shell_integration/MacOSX/NextcloudIntegration/FileProviderExt/NextcloudFilesDatabaseManager.swift b/shell_integration/MacOSX/NextcloudIntegration/FileProviderExt/NextcloudFilesDatabaseManager.swift index f17e693bd..e2ad94279 100644 --- a/shell_integration/MacOSX/NextcloudIntegration/FileProviderExt/NextcloudFilesDatabaseManager.swift +++ b/shell_integration/MacOSX/NextcloudIntegration/FileProviderExt/NextcloudFilesDatabaseManager.swift @@ -194,7 +194,7 @@ class NextcloudFilesDatabaseManager : NSObject { do { try database.write { - let existingMetadatas = ncDatabase().objects(NextcloudItemMetadataTable.self).filter("account == %@ AND serverUrl == %@ AND status == %@", account, serverUrl, NextcloudItemMetadataTable.Status.normal.rawValue) + let existingMetadatas = database.objects(NextcloudItemMetadataTable.self).filter("account == %@ AND serverUrl == %@ AND status == %@", account, serverUrl, NextcloudItemMetadataTable.Status.normal.rawValue) let deletedMetadatas = processItemMetadatasToDelete(databaseToWriteTo: database, existingMetadatas: existingMetadatas, @@ -311,6 +311,12 @@ class NextcloudFilesDatabaseManager : NSObject { return directoryMetadata(account: itemMetadata.account, serverUrl: itemMetadata.serverUrl) } + func directoryMetadatas(account: String) -> [NextcloudDirectoryMetadataTable] { + let metadatas = ncDatabase().objects(NextcloudDirectoryMetadataTable.self).filter("account == %@", account) + let sortedMetadatas = metadatas.sorted(byKeyPath: "serverUrl", ascending: true) + return Array(sortedMetadatas.map { NextcloudDirectoryMetadataTable(value: $0) }) + } + func directoryMetadatas(account: String, parentDirectoryServerUrl: String) -> [NextcloudDirectoryMetadataTable] { let metadatas = ncDatabase().objects(NextcloudDirectoryMetadataTable.self).filter("account == %@ AND parentDirectoryServerUrl == %@", account, parentDirectoryServerUrl) let sortedMetadatas = metadatas.sorted(byKeyPath: "serverUrl", ascending: true)