Skip to content

Commit de0114f

Browse files
Upload fix multisession (#129)
* fix Signed-off-by: Marino Faggiana <marino@marinofaggiana.com> * fix Signed-off-by: Marino Faggiana <marino@marinofaggiana.com> --------- Signed-off-by: Marino Faggiana <marino@marinofaggiana.com> Co-authored-by: Marino Faggiana <marino@marinofaggiana.com>
1 parent dbc7e1e commit de0114f

2 files changed

Lines changed: 9 additions & 3 deletions

File tree

Sources/NextcloudKit/NKCommon.swift

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,8 +51,10 @@ public struct NKCommon: Sendable {
5151
public var delegate: NextcloudKitDelegate?
5252
public var groupIdentifier: String?
5353

54+
// Foreground
5455
public let identifierSessionDownload: String = "com.nextcloud.nextcloudkit.session.download"
5556
public let identifierSessionUpload: String = "com.nextcloud.nextcloudkit.session.upload"
57+
// Background
5658
public let identifierSessionDownloadBackground: String = "com.nextcloud.session.downloadbackground"
5759
public let identifierSessionUploadBackground: String = "com.nextcloud.session.uploadbackground"
5860
public let identifierSessionUploadBackgroundWWan: String = "com.nextcloud.session.uploadbackgroundWWan"
@@ -474,6 +476,10 @@ public struct NKCommon: Sendable {
474476

475477
// MARK: - Common
476478

479+
public func getSessionConfigurationIdentifier(_ identifier: String, account: String) -> String {
480+
return "\(identifier).\(account)"
481+
}
482+
477483
public func getSession(account: String) -> NKSession? {
478484
var session: NKSession?
479485
nksessions.forEach { result in

Sources/NextcloudKit/NKSession.swift

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ public struct NKSession: Sendable {
7474
eventMonitors: [NKMonitor(nkCommonInstance: nkCommonInstance)])
7575

7676
/// Session Download Background
77-
let configurationDownloadBackground = URLSessionConfiguration.background(withIdentifier: NKCommon().identifierSessionDownloadBackground)
77+
let configurationDownloadBackground = URLSessionConfiguration.background(withIdentifier: NKCommon().getSessionConfigurationIdentifier(NKCommon().identifierSessionDownloadBackground, account: account))
7878
configurationDownloadBackground.allowsCellularAccess = true
7979

8080
if #available(macOS 11, *) {
@@ -93,7 +93,7 @@ public struct NKSession: Sendable {
9393
sessionDownloadBackground = URLSession(configuration: configurationDownloadBackground, delegate: backgroundSessionDelegate, delegateQueue: OperationQueue.main)
9494

9595
/// Session Upload Background
96-
let configurationUploadBackground = URLSessionConfiguration.background(withIdentifier: NKCommon().identifierSessionUploadBackground)
96+
let configurationUploadBackground = URLSessionConfiguration.background(withIdentifier: NKCommon().getSessionConfigurationIdentifier(NKCommon().identifierSessionUploadBackground, account: account))
9797
configurationUploadBackground.allowsCellularAccess = true
9898

9999
if #available(macOS 11, *) {
@@ -112,7 +112,7 @@ public struct NKSession: Sendable {
112112
sessionUploadBackground = URLSession(configuration: configurationUploadBackground, delegate: backgroundSessionDelegate, delegateQueue: OperationQueue.main)
113113

114114
/// Session Upload Background WWan
115-
let configurationUploadBackgroundWWan = URLSessionConfiguration.background(withIdentifier: NKCommon().identifierSessionUploadBackgroundWWan)
115+
let configurationUploadBackgroundWWan = URLSessionConfiguration.background(withIdentifier: NKCommon().getSessionConfigurationIdentifier(NKCommon().identifierSessionUploadBackgroundWWan, account: account))
116116
configurationUploadBackgroundWWan.allowsCellularAccess = false
117117

118118
if #available(macOS 11, *) {

0 commit comments

Comments
 (0)