|
@@ -2302,7 +2302,21 @@ class NCManageDatabase: NSObject {
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
- @objc func getQueueUploadLock(selector: String, withPath: Bool) -> CCMetadataNet? {
|
|
|
|
|
|
+ @objc func getQueueUpload(predicate: NSPredicate) -> [tableQueueUpload]? {
|
|
|
|
+
|
|
|
|
+ guard self.getAccountActive() != nil else {
|
|
|
|
+ return nil
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ let realm = try! Realm()
|
|
|
|
+ realm.refresh()
|
|
|
|
+
|
|
|
|
+ let results = realm.objects(tableQueueUpload.self).filter(predicate)
|
|
|
|
+
|
|
|
|
+ return Array(results.map { tableQueueUpload.init(value:$0) })
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ @objc func getQueueUpload(withPath: Bool) -> CCMetadataNet? {
|
|
|
|
|
|
guard let tableAccount = self.getAccountActive() else {
|
|
guard let tableAccount = self.getAccountActive() else {
|
|
return nil
|
|
return nil
|
|
@@ -2311,17 +2325,15 @@ class NCManageDatabase: NSObject {
|
|
var result: tableQueueUpload?
|
|
var result: tableQueueUpload?
|
|
|
|
|
|
let realm = try! Realm()
|
|
let realm = try! Realm()
|
|
-
|
|
|
|
- realm.beginWrite()
|
|
|
|
|
|
+ realm.refresh()
|
|
|
|
|
|
if withPath {
|
|
if withPath {
|
|
- result = realm.objects(tableQueueUpload.self).filter("account = %@ AND selector = %@ AND lock == false AND path != nil", tableAccount.account, selector).sorted(byKeyPath: "date", ascending: true).first
|
|
|
|
|
|
+ result = realm.objects(tableQueueUpload.self).filter("account = %@ AND lock == false AND path != nil", tableAccount.account).sorted(byKeyPath: "date", ascending: true).first
|
|
} else {
|
|
} else {
|
|
- result = realm.objects(tableQueueUpload.self).filter("account = %@ AND selector = %@ AND lock == false AND path == nil", tableAccount.account, selector).sorted(byKeyPath: "date", ascending: true).first
|
|
|
|
|
|
+ result = realm.objects(tableQueueUpload.self).filter("account = %@ AND lock == false AND path == nil", tableAccount.account).sorted(byKeyPath: "date", ascending: true).first
|
|
}
|
|
}
|
|
|
|
|
|
if result == nil {
|
|
if result == nil {
|
|
- realm.cancelWrite()
|
|
|
|
return nil
|
|
return nil
|
|
}
|
|
}
|
|
|
|
|
|
@@ -2329,8 +2341,8 @@ class NCManageDatabase: NSObject {
|
|
|
|
|
|
metadataNet.account = result!.account
|
|
metadataNet.account = result!.account
|
|
metadataNet.assetLocalIdentifier = result!.assetLocalIdentifier
|
|
metadataNet.assetLocalIdentifier = result!.assetLocalIdentifier
|
|
- metadataNet.directoryID = self.getDirectoryID(result!.serverUrl)
|
|
|
|
metadataNet.errorCode = result!.errorCode
|
|
metadataNet.errorCode = result!.errorCode
|
|
|
|
+ metadataNet.directoryID = self.getDirectoryID(result!.serverUrl)
|
|
metadataNet.fileName = result!.fileName
|
|
metadataNet.fileName = result!.fileName
|
|
metadataNet.path = result!.path
|
|
metadataNet.path = result!.path
|
|
metadataNet.selector = result!.selector
|
|
metadataNet.selector = result!.selector
|
|
@@ -2339,16 +2351,6 @@ class NCManageDatabase: NSObject {
|
|
metadataNet.session = result!.session
|
|
metadataNet.session = result!.session
|
|
metadataNet.taskStatus = Int(k_taskStatusResume)
|
|
metadataNet.taskStatus = Int(k_taskStatusResume)
|
|
|
|
|
|
- // Lock
|
|
|
|
- result!.lock = true
|
|
|
|
-
|
|
|
|
- do {
|
|
|
|
- try realm.commitWrite()
|
|
|
|
- } catch let error {
|
|
|
|
- print("[LOG] Could not write to database: ", error)
|
|
|
|
- return nil
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
return metadataNet
|
|
return metadataNet
|
|
}
|
|
}
|
|
|
|
|
|
@@ -2366,38 +2368,26 @@ class NCManageDatabase: NSObject {
|
|
return Array(results.map { tableQueueUpload.init(value:$0) })
|
|
return Array(results.map { tableQueueUpload.init(value:$0) })
|
|
}
|
|
}
|
|
|
|
|
|
- @objc func getQueueUpload(predicate: NSPredicate) -> [tableQueueUpload]? {
|
|
|
|
-
|
|
|
|
- guard self.getAccountActive() != nil else {
|
|
|
|
- return nil
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- let realm = try! Realm()
|
|
|
|
- realm.refresh()
|
|
|
|
-
|
|
|
|
- let results = realm.objects(tableQueueUpload.self).filter(predicate)
|
|
|
|
-
|
|
|
|
- return Array(results.map { tableQueueUpload.init(value:$0) })
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- @objc func getQueueUpload(withPath: Bool) -> CCMetadataNet? {
|
|
|
|
|
|
+ @objc func lockQueueUpload(selector: String, withPath: Bool) -> CCMetadataNet? {
|
|
|
|
|
|
guard let tableAccount = self.getAccountActive() else {
|
|
guard let tableAccount = self.getAccountActive() else {
|
|
return nil
|
|
return nil
|
|
}
|
|
}
|
|
|
|
|
|
var result: tableQueueUpload?
|
|
var result: tableQueueUpload?
|
|
-
|
|
|
|
|
|
+
|
|
let realm = try! Realm()
|
|
let realm = try! Realm()
|
|
- realm.refresh()
|
|
|
|
|
|
+
|
|
|
|
+ realm.beginWrite()
|
|
|
|
|
|
if withPath {
|
|
if withPath {
|
|
- result = realm.objects(tableQueueUpload.self).filter("account = %@ AND lock == false AND path != nil", tableAccount.account).sorted(byKeyPath: "date", ascending: true).first
|
|
|
|
|
|
+ result = realm.objects(tableQueueUpload.self).filter("account = %@ AND selector = %@ AND lock == false AND path != nil", tableAccount.account, selector).sorted(byKeyPath: "date", ascending: true).first
|
|
} else {
|
|
} else {
|
|
- result = realm.objects(tableQueueUpload.self).filter("account = %@ AND lock == false AND path == nil", tableAccount.account).sorted(byKeyPath: "date", ascending: true).first
|
|
|
|
|
|
+ result = realm.objects(tableQueueUpload.self).filter("account = %@ AND selector = %@ AND lock == false AND path == nil", tableAccount.account, selector).sorted(byKeyPath: "date", ascending: true).first
|
|
}
|
|
}
|
|
|
|
|
|
if result == nil {
|
|
if result == nil {
|
|
|
|
+ realm.cancelWrite()
|
|
return nil
|
|
return nil
|
|
}
|
|
}
|
|
|
|
|
|
@@ -2405,8 +2395,8 @@ class NCManageDatabase: NSObject {
|
|
|
|
|
|
metadataNet.account = result!.account
|
|
metadataNet.account = result!.account
|
|
metadataNet.assetLocalIdentifier = result!.assetLocalIdentifier
|
|
metadataNet.assetLocalIdentifier = result!.assetLocalIdentifier
|
|
- metadataNet.errorCode = result!.errorCode
|
|
|
|
metadataNet.directoryID = self.getDirectoryID(result!.serverUrl)
|
|
metadataNet.directoryID = self.getDirectoryID(result!.serverUrl)
|
|
|
|
+ metadataNet.errorCode = result!.errorCode
|
|
metadataNet.fileName = result!.fileName
|
|
metadataNet.fileName = result!.fileName
|
|
metadataNet.path = result!.path
|
|
metadataNet.path = result!.path
|
|
metadataNet.selector = result!.selector
|
|
metadataNet.selector = result!.selector
|
|
@@ -2415,6 +2405,16 @@ class NCManageDatabase: NSObject {
|
|
metadataNet.session = result!.session
|
|
metadataNet.session = result!.session
|
|
metadataNet.taskStatus = Int(k_taskStatusResume)
|
|
metadataNet.taskStatus = Int(k_taskStatusResume)
|
|
|
|
|
|
|
|
+ // Lock
|
|
|
|
+ result!.lock = true
|
|
|
|
+
|
|
|
|
+ do {
|
|
|
|
+ try realm.commitWrite()
|
|
|
|
+ } catch let error {
|
|
|
|
+ print("[LOG] Could not write to database: ", error)
|
|
|
|
+ return nil
|
|
|
|
+ }
|
|
|
|
+
|
|
return metadataNet
|
|
return metadataNet
|
|
}
|
|
}
|
|
|
|
|
|
@@ -2443,7 +2443,7 @@ class NCManageDatabase: NSObject {
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
- @objc func unlockAllQueueUploadInPath() {
|
|
|
|
|
|
+ @objc func unlockAllQueueUploadWithPath() {
|
|
|
|
|
|
guard let tableAccount = self.getAccountActive() else {
|
|
guard let tableAccount = self.getAccountActive() else {
|
|
return
|
|
return
|