Browse Source

improved code

Signed-off-by: Marino Faggiana <marino@marinofaggiana.com>
Marino Faggiana 2 years ago
parent
commit
cdf89c850e

+ 1 - 0
.swiftlint.yml

@@ -75,6 +75,7 @@ excluded:
   - iOSClient/Data/NCElementsJSON.swift
   - iOSClient/Data/NCManageDatabase+Account.swift
   - iOSClient/Data/NCManageDatabase+Activity.swift
+  - iOSClient/Data/NCManageDatabase+Avatar.swift
   - iOSClient/Data/NCManageDatabase.swift
   - iOSClient/Data/NCManageDatabase+Metadata.swift
   - iOSClient/Data/NCManageDatabase+Directory.swift

+ 14 - 0
Nextcloud.xcodeproj/project.pbxproj

@@ -219,6 +219,12 @@
 		F749B64D297B0CBB00087535 /* NCManageDatabase+Share.swift in Sources */ = {isa = PBXBuildFile; fileRef = F749B649297B0CBB00087535 /* NCManageDatabase+Share.swift */; };
 		F749B64E297B0CBB00087535 /* NCManageDatabase+Share.swift in Sources */ = {isa = PBXBuildFile; fileRef = F749B649297B0CBB00087535 /* NCManageDatabase+Share.swift */; };
 		F749B64F297B0CBB00087535 /* NCManageDatabase+Share.swift in Sources */ = {isa = PBXBuildFile; fileRef = F749B649297B0CBB00087535 /* NCManageDatabase+Share.swift */; };
+		F749B651297B0F2400087535 /* NCManageDatabase+Avatar.swift in Sources */ = {isa = PBXBuildFile; fileRef = F749B650297B0F2400087535 /* NCManageDatabase+Avatar.swift */; };
+		F749B652297B0F2400087535 /* NCManageDatabase+Avatar.swift in Sources */ = {isa = PBXBuildFile; fileRef = F749B650297B0F2400087535 /* NCManageDatabase+Avatar.swift */; };
+		F749B653297B0F2400087535 /* NCManageDatabase+Avatar.swift in Sources */ = {isa = PBXBuildFile; fileRef = F749B650297B0F2400087535 /* NCManageDatabase+Avatar.swift */; };
+		F749B654297B0F2400087535 /* NCManageDatabase+Avatar.swift in Sources */ = {isa = PBXBuildFile; fileRef = F749B650297B0F2400087535 /* NCManageDatabase+Avatar.swift */; };
+		F749B655297B0F2400087535 /* NCManageDatabase+Avatar.swift in Sources */ = {isa = PBXBuildFile; fileRef = F749B650297B0F2400087535 /* NCManageDatabase+Avatar.swift */; };
+		F749B656297B0F2400087535 /* NCManageDatabase+Avatar.swift in Sources */ = {isa = PBXBuildFile; fileRef = F749B650297B0F2400087535 /* NCManageDatabase+Avatar.swift */; };
 		F749C10B23C4A5340027D966 /* NCIntroCollectionViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = F749C10723C4A5330027D966 /* NCIntroCollectionViewCell.swift */; };
 		F749C10C23C4A5340027D966 /* NCIntroViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = F749C10823C4A5330027D966 /* NCIntroViewController.swift */; };
 		F749C10D23C4A5340027D966 /* NCIntro.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = F749C10923C4A5330027D966 /* NCIntro.storyboard */; };
@@ -843,6 +849,7 @@
 		F7496B81208F5651004B299C /* iOSClient.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = iOSClient.plist; sourceTree = "<group>"; };
 		F7496B83208F5652004B299C /* Share.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Share.plist; sourceTree = "<group>"; };
 		F749B649297B0CBB00087535 /* NCManageDatabase+Share.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "NCManageDatabase+Share.swift"; sourceTree = "<group>"; };
+		F749B650297B0F2400087535 /* NCManageDatabase+Avatar.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "NCManageDatabase+Avatar.swift"; sourceTree = "<group>"; };
 		F749C10723C4A5330027D966 /* NCIntroCollectionViewCell.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NCIntroCollectionViewCell.swift; sourceTree = "<group>"; };
 		F749C10823C4A5330027D966 /* NCIntroViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NCIntroViewController.swift; sourceTree = "<group>"; };
 		F749C10923C4A5330027D966 /* NCIntro.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; path = NCIntro.storyboard; sourceTree = "<group>"; };
@@ -1893,6 +1900,7 @@
 				F7C1EEA425053A9C00866ACC /* NCDataSource.swift */,
 				F7BAADB41ED5A87C00B7EAD4 /* NCDatabase.swift */,
 				F7BAADB51ED5A87C00B7EAD4 /* NCManageDatabase.swift */,
+				F749B650297B0F2400087535 /* NCManageDatabase+Avatar.swift */,
 				AF4BF61D27562B3F0081CEEF /* NCManageDatabase+Activity.swift */,
 				F749B649297B0CBB00087535 /* NCManageDatabase+Share.swift */,
 				AF4BF613275629E20081CEEF /* NCManageDatabase+Account.swift */,
@@ -2888,6 +2896,7 @@
 				AF4BF61C27562A4B0081CEEF /* NCManageDatabase+Metadata.swift in Sources */,
 				AF817EF4274BC781009ED85B /* NCUserBaseUrl.swift in Sources */,
 				F798F0EC2588060A000DAFFD /* UIColor+Extension.swift in Sources */,
+				F749B656297B0F2400087535 /* NCManageDatabase+Avatar.swift in Sources */,
 				2CB7D1CA23E2EDCB00376EF9 /* NCPushNotificationEncryption.m in Sources */,
 				F782FDC424E6933900666099 /* NCUtility.swift in Sources */,
 			);
@@ -2958,6 +2967,7 @@
 				F7D68FCE28CB9051009139F3 /* NCManageDatabase+DashboardWidget.swift in Sources */,
 				AF22B217277D196700DAB0CC /* NCShareExtension+DataSource.swift in Sources */,
 				F76D364728A4F8BF00214537 /* NCActivityIndicator.swift in Sources */,
+				F749B654297B0F2400087535 /* NCManageDatabase+Avatar.swift in Sources */,
 				F780710A1EDAB65800EAFFF6 /* NSNotificationCenter+MainThread.m in Sources */,
 				F79EC77F26316193004E59D6 /* NCRenameFile.swift in Sources */,
 				AF22B208277B4E4C00DAB0CC /* NCCreateFormUploadConflictCell.swift in Sources */,
@@ -2997,6 +3007,7 @@
 				F793E59D28B761E7005E4B02 /* NCNetworking.swift in Sources */,
 				F78302FC28B4C3F300B84583 /* NCElementsJSON.swift in Sources */,
 				F7BF9D832934CA21009EE9A6 /* NCManageDatabase+LayoutForView.swift in Sources */,
+				F749B652297B0F2400087535 /* NCManageDatabase+Avatar.swift in Sources */,
 				F783030628B4C51E00B84583 /* String+Extension.swift in Sources */,
 				F77ED59328C9CEA000E24ED0 /* ToolbarWidgetProvider.swift in Sources */,
 				F72A17D828B221E300F3F159 /* DashboardWidgetView.swift in Sources */,
@@ -3029,6 +3040,7 @@
 				F7434B3820E2400600417916 /* NCBrand.swift in Sources */,
 				F785EE9E2461A09900B3F945 /* NCNetworking.swift in Sources */,
 				F746EC4F273906B90052598D /* NCViewCertificateDetails.swift in Sources */,
+				F749B655297B0F2400087535 /* NCManageDatabase+Avatar.swift in Sources */,
 				F771E3D320E2392D00AFB62D /* FileProviderExtension.swift in Sources */,
 				F73D5E49246DE09200DF6467 /* NCElementsJSON.swift in Sources */,
 				F771E3D520E2392D00AFB62D /* FileProviderItem.swift in Sources */,
@@ -3203,6 +3215,7 @@
 				AF93471B27E2361E002537EE /* NCShareAdvancePermission.swift in Sources */,
 				F77BC3ED293E528A005F2B08 /* NCConfigServer.swift in Sources */,
 				F70753EB2542A99800972D44 /* NCViewerMediaPage.swift in Sources */,
+				F749B651297B0F2400087535 /* NCManageDatabase+Avatar.swift in Sources */,
 				F7FAFD3A28BFA948000777FE /* NCNotification+Menu.swift in Sources */,
 				F74C0436253F1CDC009762AB /* NCShares.swift in Sources */,
 				F7AC1CB028AB94490032D99F /* Array+Extension.swift in Sources */,
@@ -3260,6 +3273,7 @@
 				F75DD767290ABB25002EB562 /* Intent.intentdefinition in Sources */,
 				F749B64C297B0CBB00087535 /* NCManageDatabase+Share.swift in Sources */,
 				F7A8D73F28F181EF008BBE1C /* NCGlobal.swift in Sources */,
+				F749B653297B0F2400087535 /* NCManageDatabase+Avatar.swift in Sources */,
 				F7A8D74328F1826F008BBE1C /* String+Extension.swift in Sources */,
 				F7A8D73728F17E1E008BBE1C /* NCManageDatabase+Account.swift in Sources */,
 				F7A8D73B28F17E2C008BBE1C /* NCElementsJSON.swift in Sources */,

+ 0 - 12
iOSClient/Data/NCDatabase.swift

@@ -30,18 +30,6 @@ protocol DateCompareable {
     var dateKey: Date { get }
 }
 
-class tableAvatar: Object {
-
-    @objc dynamic var date = NSDate()
-    @objc dynamic var etag = ""
-    @objc dynamic var fileName = ""
-    @objc dynamic var loaded: Bool = false
-
-    override static func primaryKey() -> String {
-        return "fileName"
-    }
-}
-
 class tableCapabilities: Object {
 
     @objc dynamic var account = ""

+ 6 - 6
iOSClient/Data/NCManageDatabase+Activity.swift

@@ -103,7 +103,7 @@ class tableActivitySubjectRich: Object {
 
 extension NCManageDatabase {
     
-    @objc func addActivity(_ activities: [NKActivity], account: String) {
+    func addActivity(_ activities: [NKActivity], account: String) {
 
         let realm = try! Realm()
 
@@ -208,7 +208,7 @@ extension NCManageDatabase {
         return (all: allActivity, filter: filtered)
     }
 
-    @objc func getActivitySubjectRich(account: String, idActivity: Int, key: String) -> tableActivitySubjectRich? {
+    func getActivitySubjectRich(account: String, idActivity: Int, key: String) -> tableActivitySubjectRich? {
 
         let realm = try! Realm()
 
@@ -217,7 +217,7 @@ extension NCManageDatabase {
         return results.map { tableActivitySubjectRich.init(value: $0) }
     }
 
-    @objc func getActivitySubjectRich(account: String, idActivity: Int, id: String) -> tableActivitySubjectRich? {
+    func getActivitySubjectRich(account: String, idActivity: Int, id: String) -> tableActivitySubjectRich? {
 
         let realm = try! Realm()
 
@@ -234,7 +234,7 @@ extension NCManageDatabase {
         return activitySubjectRich.map { tableActivitySubjectRich.init(value: $0) }
     }
 
-    @objc func getActivityPreview(account: String, idActivity: Int, orderKeysId: [String]) -> [tableActivityPreview] {
+    func getActivityPreview(account: String, idActivity: Int, orderKeysId: [String]) -> [tableActivityPreview] {
 
         let realm = try! Realm()
 
@@ -274,7 +274,7 @@ extension NCManageDatabase {
     // MARK: -
     // MARK: Table Comments
 
-    @objc func addComments(_ comments: [NKComments], account: String, objectId: String) {
+    func addComments(_ comments: [NKComments], account: String, objectId: String) {
 
         let realm = try! Realm()
 
@@ -309,7 +309,7 @@ extension NCManageDatabase {
         }
     }
 
-    @objc func getComments(account: String, objectId: String) -> [tableComments] {
+    func getComments(account: String, objectId: String) -> [tableComments] {
 
         let realm = try! Realm()
 

+ 134 - 0
iOSClient/Data/NCManageDatabase+Avatar.swift

@@ -0,0 +1,134 @@
+//
+//  NCManageDatabase+Avatar.swift
+//  Nextcloud
+//
+//  Created by Marino Faggiana on 20/01/23.
+//  Copyright © 2023 Marino Faggiana. All rights reserved.
+//
+//  Author Marino Faggiana <marino.faggiana@nextcloud.com>
+//
+//  This program is free software: you can redistribute it and/or modify
+//  it under the terms of the GNU General Public License as published by
+//  the Free Software Foundation, either version 3 of the License, or
+//  (at your option) any later version.
+//
+//  This program is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+//  GNU General Public License for more details.
+//
+//  You should have received a copy of the GNU General Public License
+//  along with this program.  If not, see <http://www.gnu.org/licenses/>.
+//
+
+import Foundation
+import RealmSwift
+import NextcloudKit
+
+class tableAvatar: Object {
+
+    @objc dynamic var date = NSDate()
+    @objc dynamic var etag = ""
+    @objc dynamic var fileName = ""
+    @objc dynamic var loaded: Bool = false
+
+    override static func primaryKey() -> String {
+        return "fileName"
+    }
+}
+
+extension NCManageDatabase {
+
+    func addAvatar(fileName: String, etag: String) {
+
+        let realm = try! Realm()
+
+        do {
+            try realm.write {
+
+                // Add new
+                let addObject = tableAvatar()
+
+                addObject.date = NSDate()
+                addObject.etag = etag
+                addObject.fileName = fileName
+                addObject.loaded = true
+
+                realm.add(addObject, update: .all)
+            }
+        } catch let error {
+            NKCommon.shared.writeLog("Could not write to database: \(error)")
+        }
+    }
+
+    func getTableAvatar(fileName: String) -> tableAvatar? {
+
+        let realm = try! Realm()
+
+        guard let result = realm.objects(tableAvatar.self).filter("fileName == %@", fileName).first else {
+            return nil
+        }
+
+        return tableAvatar.init(value: result)
+    }
+
+    func clearAllAvatarLoaded() {
+
+        let realm = try! Realm()
+
+        do {
+            try realm.write {
+
+                let results = realm.objects(tableAvatar.self)
+                for result in results {
+                    result.loaded = false
+                    realm.add(result, update: .all)
+                }
+            }
+        } catch let error {
+            NKCommon.shared.writeLog("Could not write to database: \(error)")
+        }
+    }
+
+    @discardableResult
+    func setAvatarLoaded(fileName: String) -> UIImage? {
+
+        let realm = try! Realm()
+        let fileNameLocalPath = String(CCUtility.getDirectoryUserData()) + "/" + fileName
+        var image: UIImage?
+
+        do {
+            try realm.write {
+                if let result = realm.objects(tableAvatar.self).filter("fileName == %@", fileName).first {
+                    if let imageAvatar = UIImage(contentsOfFile: fileNameLocalPath) {
+                        result.loaded = true
+                        image = imageAvatar
+                    } else {
+                        realm.delete(result)
+                    }
+                }
+            }
+        } catch let error {
+            NKCommon.shared.writeLog("Could not write to database: \(error)")
+        }
+
+        return image
+    }
+
+    func getImageAvatarLoaded(fileName: String) -> UIImage? {
+
+        let realm = try! Realm()
+        let fileNameLocalPath = String(CCUtility.getDirectoryUserData()) + "/" + fileName
+
+        let result = realm.objects(tableAvatar.self).filter("fileName == %@", fileName).first
+        if result == nil {
+            NCUtilityFileSystem.shared.deleteFile(filePath: fileNameLocalPath)
+            return nil
+        } else if result?.loaded == false {
+            return nil
+        }
+
+        return UIImage(contentsOfFile: fileNameLocalPath)
+    }
+
+}

+ 9 - 9
iOSClient/Data/NCManageDatabase+Directory.swift

@@ -46,7 +46,7 @@ class tableDirectory: Object {
 
 extension NCManageDatabase {
 
-    @objc func addDirectory(encrypted: Bool, favorite: Bool, ocId: String, fileId: String, etag: String? = nil, permissions: String? = nil, serverUrl: String, account: String) {
+    func addDirectory(encrypted: Bool, favorite: Bool, ocId: String, fileId: String, etag: String? = nil, permissions: String? = nil, serverUrl: String, account: String) {
 
         let realm = try! Realm()
 
@@ -80,7 +80,7 @@ extension NCManageDatabase {
         }
     }
 
-    @objc func deleteDirectoryAndSubDirectory(serverUrl: String, account: String) {
+    func deleteDirectoryAndSubDirectory(serverUrl: String, account: String) {
 
         let realm = try! Realm()
 
@@ -103,7 +103,7 @@ extension NCManageDatabase {
         }
     }
 
-    @objc func setDirectory(serverUrl: String, serverUrlTo: String? = nil, etag: String? = nil, ocId: String? = nil, fileId: String? = nil, encrypted: Bool, richWorkspace: String? = nil, account: String) {
+    func setDirectory(serverUrl: String, serverUrlTo: String? = nil, etag: String? = nil, ocId: String? = nil, fileId: String? = nil, encrypted: Bool, richWorkspace: String? = nil, account: String) {
 
         let realm = try! Realm()
 
@@ -142,7 +142,7 @@ extension NCManageDatabase {
         }
     }
 
-    @objc func getTableDirectory(predicate: NSPredicate) -> tableDirectory? {
+    func getTableDirectory(predicate: NSPredicate) -> tableDirectory? {
 
         let realm = try! Realm()
 
@@ -153,7 +153,7 @@ extension NCManageDatabase {
         return tableDirectory.init(value: result)
     }
 
-    @objc func getTablesDirectory(predicate: NSPredicate, sorted: String, ascending: Bool) -> [tableDirectory]? {
+    func getTablesDirectory(predicate: NSPredicate, sorted: String, ascending: Bool) -> [tableDirectory]? {
 
         let realm = try! Realm()
 
@@ -166,7 +166,7 @@ extension NCManageDatabase {
         }
     }
 
-    @objc func renameDirectory(ocId: String, serverUrl: String) {
+    func renameDirectory(ocId: String, serverUrl: String) {
 
         let realm = try! Realm()
 
@@ -180,7 +180,7 @@ extension NCManageDatabase {
         }
     }
 
-    @objc func setDirectory(serverUrl: String, offline: Bool, account: String) {
+    func setDirectory(serverUrl: String, offline: Bool, account: String) {
 
         let realm = try! Realm()
 
@@ -195,7 +195,7 @@ extension NCManageDatabase {
     }
 
     @discardableResult
-    @objc func setDirectory(serverUrl: String, richWorkspace: String?, account: String) -> tableDirectory? {
+    func setDirectory(serverUrl: String, richWorkspace: String?, account: String) -> tableDirectory? {
 
         let realm = try! Realm()
         var result: tableDirectory?
@@ -217,7 +217,7 @@ extension NCManageDatabase {
     }
 
     @discardableResult
-    @objc func setDirectory(serverUrl: String, colorFolder: String?, account: String) -> tableDirectory? {
+    func setDirectory(serverUrl: String, colorFolder: String?, account: String) -> tableDirectory? {
 
         let realm = try! Realm()
         var result: tableDirectory?

+ 25 - 29
iOSClient/Data/NCManageDatabase+Metadata.swift

@@ -219,11 +219,7 @@ extension tableMetadata {
 
 extension NCManageDatabase {
 
-    @objc func copyObject(metadata: tableMetadata) -> tableMetadata {
-        return tableMetadata.init(value: metadata)
-    }
-
-    @objc func convertFileToMetadata(_ file: NKFile, isDirectoryE2EE: Bool) -> tableMetadata {
+    func convertFileToMetadata(_ file: NKFile, isDirectoryE2EE: Bool) -> tableMetadata {
 
         let metadata = tableMetadata()
 
@@ -304,7 +300,7 @@ extension NCManageDatabase {
         return metadata
     }
 
-    @objc func convertFilesToMetadatas(_ files: [NKFile], useMetadataFolder: Bool, completion: @escaping (_ metadataFolder: tableMetadata, _ metadatasFolder: [tableMetadata], _ metadatas: [tableMetadata]) -> Void) {
+    func convertFilesToMetadatas(_ files: [NKFile], useMetadataFolder: Bool, completion: @escaping (_ metadataFolder: tableMetadata, _ metadatasFolder: [tableMetadata], _ metadatas: [tableMetadata]) -> Void) {
 
         var counter: Int = 0
         var isDirectoryE2EE: Bool = false
@@ -357,7 +353,7 @@ extension NCManageDatabase {
         completion(metadataFolder, metadataFolders, metadataOutput)
     }
 
-    @objc func createMetadata(account: String, user: String, userId: String, fileName: String, fileNameView: String, ocId: String, serverUrl: String, urlBase: String, url: String, contentType: String, isLivePhoto: Bool = false, isUrl: Bool = false, name: String = NCGlobal.shared.appName, subline: String? = nil, iconName: String? = nil, iconUrl: String? = nil) -> tableMetadata {
+    func createMetadata(account: String, user: String, userId: String, fileName: String, fileNameView: String, ocId: String, serverUrl: String, urlBase: String, url: String, contentType: String, isLivePhoto: Bool = false, isUrl: Bool = false, name: String = NCGlobal.shared.appName, subline: String? = nil, iconName: String? = nil, iconUrl: String? = nil) -> tableMetadata {
 
         let metadata = tableMetadata()
         if isUrl {
@@ -413,7 +409,7 @@ extension NCManageDatabase {
     }
 
     @discardableResult
-    @objc func addMetadata(_ metadata: tableMetadata) -> tableMetadata? {
+    func addMetadata(_ metadata: tableMetadata) -> tableMetadata? {
 
         let realm = try! Realm()
         let result = tableMetadata.init(value: metadata)
@@ -429,7 +425,7 @@ extension NCManageDatabase {
         return tableMetadata.init(value: result)
     }
 
-    @objc func addMetadatas(_ metadatas: [tableMetadata]) {
+    func addMetadatas(_ metadatas: [tableMetadata]) {
 
         let realm = try! Realm()
 
@@ -444,7 +440,7 @@ extension NCManageDatabase {
         }
     }
 
-    @objc func deleteMetadata(predicate: NSPredicate) {
+    func deleteMetadata(predicate: NSPredicate) {
 
         let realm = try! Realm()
 
@@ -458,7 +454,7 @@ extension NCManageDatabase {
         }
     }
 
-    @objc func moveMetadata(ocId: String, serverUrlTo: String) {
+    func moveMetadata(ocId: String, serverUrlTo: String) {
 
         let realm = try! Realm()
 
@@ -473,7 +469,7 @@ extension NCManageDatabase {
         }
     }
 
-    @objc func renameMetadata(fileNameTo: String, ocId: String) {
+    func renameMetadata(fileNameTo: String, ocId: String) {
 
         let realm = try! Realm()
 
@@ -647,7 +643,7 @@ extension NCManageDatabase {
         }
     }
 
-    @objc func setMetadataFavorite(ocId: String, favorite: Bool) {
+    func setMetadataFavorite(ocId: String, favorite: Bool) {
 
         let realm = try! Realm()
 
@@ -661,7 +657,7 @@ extension NCManageDatabase {
         }
     }
 
-    @objc func updateMetadatasFavorite(account: String, metadatas: [tableMetadata]) {
+    func updateMetadatasFavorite(account: String, metadatas: [tableMetadata]) {
 
         let realm = try! Realm()
 
@@ -680,7 +676,7 @@ extension NCManageDatabase {
         }
     }
 
-    @objc func setMetadataEncrypted(ocId: String, encrypted: Bool) {
+    func setMetadataEncrypted(ocId: String, encrypted: Bool) {
 
         let realm = try! Realm()
 
@@ -694,7 +690,7 @@ extension NCManageDatabase {
         }
     }
 
-    @objc func setMetadataFileNameView(serverUrl: String, fileName: String, newFileNameView: String, account: String) {
+    func setMetadataFileNameView(serverUrl: String, fileName: String, newFileNameView: String, account: String) {
 
         let realm = try! Realm()
 
@@ -708,7 +704,7 @@ extension NCManageDatabase {
         }
     }
 
-    @objc func getMetadata(predicate: NSPredicate) -> tableMetadata? {
+    func getMetadata(predicate: NSPredicate) -> tableMetadata? {
 
         let realm = try! Realm()
         realm.refresh()
@@ -720,7 +716,7 @@ extension NCManageDatabase {
         return tableMetadata.init(value: result)
     }
 
-    @objc func getMetadata(predicate: NSPredicate, sorted: String, ascending: Bool) -> tableMetadata? {
+    func getMetadata(predicate: NSPredicate, sorted: String, ascending: Bool) -> tableMetadata? {
 
         let realm = try! Realm()
         realm.refresh()
@@ -732,7 +728,7 @@ extension NCManageDatabase {
         return tableMetadata.init(value: result)
     }
 
-    @objc func getMetadatasViewer(predicate: NSPredicate, sorted: String, ascending: Bool) -> [tableMetadata]? {
+    func getMetadatasViewer(predicate: NSPredicate, sorted: String, ascending: Bool) -> [tableMetadata]? {
 
         let realm = try! Realm()
         realm.refresh()
@@ -771,7 +767,7 @@ extension NCManageDatabase {
         }
     }
 
-    @objc func getMetadatas(predicate: NSPredicate) -> [tableMetadata] {
+    func getMetadatas(predicate: NSPredicate) -> [tableMetadata] {
 
         let realm = try! Realm()
         realm.refresh()
@@ -781,7 +777,7 @@ extension NCManageDatabase {
         return Array(results.map { tableMetadata.init(value: $0) })
     }
 
-    @objc func getAdvancedMetadatas(predicate: NSPredicate, page: Int = 0, limit: Int = 0, sorted: String, ascending: Bool) -> [tableMetadata] {
+    func getAdvancedMetadatas(predicate: NSPredicate, page: Int = 0, limit: Int = 0, sorted: String, ascending: Bool) -> [tableMetadata] {
 
         let realm = try! Realm()
         realm.refresh()
@@ -808,7 +804,7 @@ extension NCManageDatabase {
         return metadatas
     }
 
-    @objc func getMetadataAtIndex(predicate: NSPredicate, sorted: String, ascending: Bool, index: Int) -> tableMetadata? {
+    func getMetadataAtIndex(predicate: NSPredicate, sorted: String, ascending: Bool, index: Int) -> tableMetadata? {
 
         let realm = try! Realm()
         realm.refresh()
@@ -822,7 +818,7 @@ extension NCManageDatabase {
         }
     }
 
-    @objc func getMetadataFromOcId(_ ocId: String?) -> tableMetadata? {
+    func getMetadataFromOcId(_ ocId: String?) -> tableMetadata? {
 
         let realm = try! Realm()
         realm.refresh()
@@ -833,7 +829,7 @@ extension NCManageDatabase {
         return tableMetadata.init(value: result)
     }
 
-    @objc func getMetadataFolder(account: String, urlBase: String, userId: String, serverUrl: String) -> tableMetadata? {
+    func getMetadataFolder(account: String, urlBase: String, userId: String, serverUrl: String) -> tableMetadata? {
 
         let realm = try! Realm()
         realm.refresh()
@@ -856,7 +852,7 @@ extension NCManageDatabase {
         return tableMetadata.init(value: result)
     }
 
-    @objc func getTableMetadatasDirectoryFavoriteIdentifierRank(account: String) -> [String: NSNumber] {
+    func getTableMetadatasDirectoryFavoriteIdentifierRank(account: String) -> [String: NSNumber] {
 
         var listIdentifierRank: [String: NSNumber] = [:]
         let realm = try! Realm()
@@ -888,7 +884,7 @@ extension NCManageDatabase {
         }
     }
 
-    @objc func readMarkerMetadata(account: String, fileId: String) {
+    func readMarkerMetadata(account: String, fileId: String) {
 
         let realm = try! Realm()
 
@@ -904,7 +900,7 @@ extension NCManageDatabase {
         }
     }
 
-    @objc func getAssetLocalIdentifiersUploaded(account: String) -> [String] {
+    func getAssetLocalIdentifiersUploaded(account: String) -> [String] {
 
         let realm = try! Realm()
         realm.refresh()
@@ -919,7 +915,7 @@ extension NCManageDatabase {
         return assetLocalIdentifiers
     }
 
-    @objc func clearAssetLocalIdentifiers(_ assetLocalIdentifiers: [String], account: String) {
+    func clearAssetLocalIdentifiers(_ assetLocalIdentifiers: [String], account: String) {
 
         let realm = try! Realm()
 
@@ -936,7 +932,7 @@ extension NCManageDatabase {
         }
     }
 
-    @objc func getMetadataLivePhoto(metadata: tableMetadata) -> tableMetadata? {
+    func getMetadataLivePhoto(metadata: tableMetadata) -> tableMetadata? {
 
         let realm = try! Realm()
         var classFile = metadata.classFile

+ 18 - 113
iOSClient/Data/NCManageDatabase.swift

@@ -247,102 +247,11 @@ class NCManageDatabase: NSObject {
     // MARK: -
     // MARK: Table Avatar
 
-    @objc func addAvatar(fileName: String, etag: String) {
-
-        let realm = try! Realm()
-
-        do {
-            try realm.write {
-
-                // Add new
-                let addObject = tableAvatar()
-
-                addObject.date = NSDate()
-                addObject.etag = etag
-                addObject.fileName = fileName
-                addObject.loaded = true
-
-                realm.add(addObject, update: .all)
-            }
-        } catch let error {
-            NKCommon.shared.writeLog("Could not write to database: \(error)")
-        }
-    }
-
-    func getTableAvatar(fileName: String) -> tableAvatar? {
-
-        let realm = try! Realm()
-
-        guard let result = realm.objects(tableAvatar.self).filter("fileName == %@", fileName).first else {
-            return nil
-        }
-
-        return tableAvatar.init(value: result)
-    }
-
-    func clearAllAvatarLoaded() {
-
-        let realm = try! Realm()
-
-        do {
-            try realm.write {
-
-                let results = realm.objects(tableAvatar.self)
-                for result in results {
-                    result.loaded = false
-                    realm.add(result, update: .all)
-                }
-            }
-        } catch let error {
-            NKCommon.shared.writeLog("Could not write to database: \(error)")
-        }
-    }
-
-    @discardableResult
-    func setAvatarLoaded(fileName: String) -> UIImage? {
-
-        let realm = try! Realm()
-        let fileNameLocalPath = String(CCUtility.getDirectoryUserData()) + "/" + fileName
-        var image: UIImage?
-
-        do {
-            try realm.write {
-                if let result = realm.objects(tableAvatar.self).filter("fileName == %@", fileName).first {
-                    if let imageAvatar = UIImage(contentsOfFile: fileNameLocalPath) {
-                        result.loaded = true
-                        image = imageAvatar
-                    } else {
-                        realm.delete(result)
-                    }
-                }
-            }
-        } catch let error {
-            NKCommon.shared.writeLog("Could not write to database: \(error)")
-        }
-
-        return image
-    }
-
-    func getImageAvatarLoaded(fileName: String) -> UIImage? {
-
-        let realm = try! Realm()
-        let fileNameLocalPath = String(CCUtility.getDirectoryUserData()) + "/" + fileName
-
-        let result = realm.objects(tableAvatar.self).filter("fileName == %@", fileName).first
-        if result == nil {
-            NCUtilityFileSystem.shared.deleteFile(filePath: fileNameLocalPath)
-            return nil
-        } else if result?.loaded == false {
-            return nil
-        }
-
-        return UIImage(contentsOfFile: fileNameLocalPath)
-    }
-
+    
     // MARK: -
     // MARK: Table Capabilities
 
-    @objc func addCapabilitiesJSon(_ data: Data, account: String) {
+    func addCapabilitiesJSon(_ data: Data, account: String) {
 
         let realm = try! Realm()
 
@@ -360,7 +269,7 @@ class NCManageDatabase: NSObject {
         }
     }
 
-    @objc func getCapabilities(account: String) -> String? {
+    func getCapabilities(account: String) -> String? {
 
         let realm = try! Realm()
 
@@ -391,7 +300,7 @@ class NCManageDatabase: NSObject {
         return json[elements].string
     }
 
-    @objc func getCapabilitiesServerInt(account: String, elements: [String]) -> Int {
+    func getCapabilitiesServerInt(account: String, elements: [String]) -> Int {
 
         let realm = try! Realm()
 
@@ -423,7 +332,7 @@ class NCManageDatabase: NSObject {
         }
     }
 
-    @objc func getCapabilitiesServerArray(account: String, elements: [String]) -> [String]? {
+    func getCapabilitiesServerArray(account: String, elements: [String]) -> [String]? {
 
         let realm = try! Realm()
         var resultArray: [String] = []
@@ -546,7 +455,7 @@ class NCManageDatabase: NSObject {
     // MARK: -
     // MARK: Table Direct Editing
 
-    @objc func addDirectEditing(account: String, editors: [NKEditorDetailsEditors], creators: [NKEditorDetailsCreators]) {
+    func addDirectEditing(account: String, editors: [NKEditorDetailsEditors], creators: [NKEditorDetailsCreators]) {
 
         let realm = try! Realm()
 
@@ -601,7 +510,7 @@ class NCManageDatabase: NSObject {
         }
     }
 
-    @objc func getDirectEditingCreators(account: String) -> [tableDirectEditingCreators]? {
+    func getDirectEditingCreators(account: String) -> [tableDirectEditingCreators]? {
 
         let realm = try! Realm()
         let results = realm.objects(tableDirectEditingCreators.self).filter("account == %@", account)
@@ -613,7 +522,7 @@ class NCManageDatabase: NSObject {
         }
     }
 
-    @objc func getDirectEditingCreators(predicate: NSPredicate) -> [tableDirectEditingCreators]? {
+    func getDirectEditingCreators(predicate: NSPredicate) -> [tableDirectEditingCreators]? {
 
         let realm = try! Realm()
 
@@ -626,7 +535,7 @@ class NCManageDatabase: NSObject {
         }
     }
 
-    @objc func getDirectEditingEditors(account: String) -> [tableDirectEditingEditors]? {
+    func getDirectEditingEditors(account: String) -> [tableDirectEditingEditors]? {
 
         let realm = try! Realm()
         let results = realm.objects(tableDirectEditingEditors.self).filter("account == %@", account)
@@ -795,7 +704,7 @@ class NCManageDatabase: NSObject {
     // MARK: -
     // MARK: Table External Sites
 
-    @objc func addExternalSites(_ externalSite: NKExternalSite, account: String) {
+    func addExternalSites(_ externalSite: NKExternalSite, account: String) {
 
         let realm = try! Realm()
 
@@ -818,7 +727,7 @@ class NCManageDatabase: NSObject {
         }
     }
 
-    @objc func deleteExternalSites(account: String) {
+    func deleteExternalSites(account: String) {
 
         let realm = try! Realm()
 
@@ -832,7 +741,7 @@ class NCManageDatabase: NSObject {
         }
     }
 
-    @objc func getAllExternalSites(account: String) -> [tableExternalSites]? {
+    func getAllExternalSites(account: String) -> [tableExternalSites]? {
 
         let realm = try! Realm()
 
@@ -940,7 +849,7 @@ class NCManageDatabase: NSObject {
         }
     }
 
-    @objc func deleteLocalFile(predicate: NSPredicate) {
+    func deleteLocalFile(predicate: NSPredicate) {
 
         let realm = try! Realm()
 
@@ -954,7 +863,7 @@ class NCManageDatabase: NSObject {
         }
     }
 
-    @objc func setLocalFile(ocId: String, fileName: String?, etag: String?) {
+    func setLocalFile(ocId: String, fileName: String?, etag: String?) {
 
         let realm = try! Realm()
 
@@ -993,7 +902,7 @@ class NCManageDatabase: NSObject {
         }
     }
 
-    @objc func getTableLocalFile(account: String) -> [tableLocalFile] {
+    func getTableLocalFile(account: String) -> [tableLocalFile] {
 
         let realm = try! Realm()
 
@@ -1001,7 +910,7 @@ class NCManageDatabase: NSObject {
         return Array(results.map { tableLocalFile.init(value: $0) })
     }
 
-    @objc func getTableLocalFile(predicate: NSPredicate) -> tableLocalFile? {
+    func getTableLocalFile(predicate: NSPredicate) -> tableLocalFile? {
 
         let realm = try! Realm()
 
@@ -1012,7 +921,7 @@ class NCManageDatabase: NSObject {
         return tableLocalFile.init(value: result)
     }
 
-    @objc func getTableLocalFiles(predicate: NSPredicate, sorted: String, ascending: Bool) -> [tableLocalFile] {
+    func getTableLocalFiles(predicate: NSPredicate, sorted: String, ascending: Bool) -> [tableLocalFile] {
 
         let realm = try! Realm()
 
@@ -1020,7 +929,7 @@ class NCManageDatabase: NSObject {
         return Array(results.map { tableLocalFile.init(value: $0) })
     }
 
-    @objc func setLocalFile(ocId: String, offline: Bool) {
+    func setLocalFile(ocId: String, offline: Bool) {
 
         let realm = try! Realm()
 
@@ -1097,10 +1006,6 @@ class NCManageDatabase: NSObject {
 
         return Array(idsAsset)
     }
-
-    // MARK: -
-    // MARK: Table Share
-
     
     // MARK: -
     // MARK: Table Tag