Skip to content
Merged

LOG #123

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
11 changes: 9 additions & 2 deletions Sources/NextcloudKit/NKInterceptor.swift
Original file line number Diff line number Diff line change
Expand Up @@ -6,11 +6,18 @@ import Foundation
import Alamofire

final class NKInterceptor: RequestInterceptor, Sendable {
let nkCommonInstance: NKCommon

init(nkCommonInstance: NKCommon) {
self.nkCommonInstance = nkCommonInstance
}

func adapt(_ urlRequest: URLRequest, for session: Session, completion: @escaping (Result<URLRequest, Error>) -> Void) {
//
// Detect if exists in the groupDefaults Unauthorized array the account
//
if let url: String = urlRequest.url?.absoluteString {
if let url: String = urlRequest.url?.absoluteString,
self.nkCommonInstance.levelLog > 0 {
debugPrint("[DEBUG] Interceptor request url: " + url)
}

Expand All @@ -21,7 +28,7 @@ final class NKInterceptor: RequestInterceptor, Sendable {
let groupDefaults = UserDefaults(suiteName: NextcloudKit.shared.nkCommonInstance.groupIdentifier),
let unauthorizedArray = groupDefaults.array(forKey: "Unauthorized") as? [String],
unauthorizedArray.contains(account) {
debugPrint("[DEBUG] Unauthorized for account: \(account)")
self.nkCommonInstance.writeLog("[DEBUG] Unauthorized for account: \(account)")
let error = AFError.responseValidationFailed(reason: .unacceptableStatusCode(code: 401))
return completion(.failure(error))
}
Expand Down
5 changes: 3 additions & 2 deletions Sources/NextcloudKit/NKMonitor.swift
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
self.nkCommonInstance.writeLog("Network request started: \(request)")
if self.nkCommonInstance.levelLog > 1 {
let allHeaders = request.request.flatMap { $0.allHTTPHeaderFields.map { $0.description } } ?? "None"
let body = request.request.flatMap { $0.httpBody.map { String(decoding: $0, as: UTF8.self) } } ?? "None"

Check warning on line 20 in Sources/NextcloudKit/NKMonitor.swift

View workflow job for this annotation

GitHub Actions / Lint

Optional Data -> String Conversion Violation: Prefer failable `String(bytes:encoding:)` initializer when converting `Data` to `String` (optional_data_string_conversion)

self.nkCommonInstance.writeLog("Network request headers: \(allHeaders)")
self.nkCommonInstance.writeLog("Network request body: \(body)")
Expand Down Expand Up @@ -60,8 +60,9 @@
}

if let url = request.request?.url?.absoluteString,
let account = request.request?.allHTTPHeaderFields?["X-NC-Account"] as? String {
self.nkCommonInstance.writeLog("[DEBUG] Monitor request url: \(url), status code \(statusCode), account: \(account)")
let account = request.request?.allHTTPHeaderFields?["X-NC-Account"] as? String,
self.nkCommonInstance.levelLog > 0 {
debugPrint("[DEBUG] Monitor request url: \(url), status code \(statusCode), account: \(account)")
}
}

Expand Down
28 changes: 14 additions & 14 deletions Sources/NextcloudKit/NextcloudKit+API.swift
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@ public extension NextcloudKit {
}
let method = HTTPMethod(rawValue: method.uppercased())

nkSession.sessionData.request(url, method: method, encoding: URLEncoding.default, headers: headers, interceptor: NKInterceptor()).validate(statusCode: 200..<300).onURLSessionTaskCreation { task in
nkSession.sessionData.request(url, method: method, encoding: URLEncoding.default, headers: headers, interceptor: NKInterceptor(nkCommonInstance: nkCommonInstance)).validate(statusCode: 200..<300).onURLSessionTaskCreation { task in
task.taskDescription = options.taskDescription
taskHandler(task)
}.responseData(queue: self.nkCommonInstance.backgroundQueue) { response in
Expand Down Expand Up @@ -110,7 +110,7 @@ public extension NextcloudKit {
return options.queue.async { completion(account, externalSites, nil, .urlError) }
}

nkSession.sessionData.request(url, method: .get, encoding: URLEncoding.default, headers: headers, interceptor: NKInterceptor()).validate(statusCode: 200..<300).onURLSessionTaskCreation { task in
nkSession.sessionData.request(url, method: .get, encoding: URLEncoding.default, headers: headers, interceptor: NKInterceptor(nkCommonInstance: nkCommonInstance)).validate(statusCode: 200..<300).onURLSessionTaskCreation { task in
task.taskDescription = options.taskDescription
taskHandler(task)
}.responseData(queue: self.nkCommonInstance.backgroundQueue) { response in
Expand Down Expand Up @@ -234,7 +234,7 @@ public extension NextcloudKit {
headers.update(name: "If-None-Match", value: etag)
}

nkSession.sessionData.request(url, method: .get, encoding: URLEncoding.default, headers: headers, interceptor: NKInterceptor()).validate(statusCode: 200..<300).onURLSessionTaskCreation { task in
nkSession.sessionData.request(url, method: .get, encoding: URLEncoding.default, headers: headers, interceptor: NKInterceptor(nkCommonInstance: nkCommonInstance)).validate(statusCode: 200..<300).onURLSessionTaskCreation { task in
task.taskDescription = options.taskDescription
taskHandler(task)
}.response(queue: self.nkCommonInstance.backgroundQueue) { response in
Expand Down Expand Up @@ -280,7 +280,7 @@ public extension NextcloudKit {
headers.update(name: "If-None-Match", value: etag)
}

nkSession.sessionData.request(url, method: .get, encoding: URLEncoding.default, headers: headers, interceptor: NKInterceptor()).validate(statusCode: 200..<300).onURLSessionTaskCreation { task in
nkSession.sessionData.request(url, method: .get, encoding: URLEncoding.default, headers: headers, interceptor: NKInterceptor(nkCommonInstance: nkCommonInstance)).validate(statusCode: 200..<300).onURLSessionTaskCreation { task in
task.taskDescription = options.taskDescription
taskHandler(task)
}.response(queue: self.nkCommonInstance.backgroundQueue) { response in
Expand Down Expand Up @@ -321,7 +321,7 @@ public extension NextcloudKit {
return options.queue.async { completion(account, width, height, nil, .urlError) }
}

nkSession.sessionData.request(url, method: .get, encoding: URLEncoding.default, headers: headers, interceptor: NKInterceptor()).validate(statusCode: 200..<300).onURLSessionTaskCreation { task in
nkSession.sessionData.request(url, method: .get, encoding: URLEncoding.default, headers: headers, interceptor: NKInterceptor(nkCommonInstance: nkCommonInstance)).validate(statusCode: 200..<300).onURLSessionTaskCreation { task in
task.taskDescription = options.taskDescription
taskHandler(task)
}.response(queue: self.nkCommonInstance.backgroundQueue) { response in
Expand Down Expand Up @@ -363,7 +363,7 @@ public extension NextcloudKit {
headers.update(name: "If-None-Match", value: etag)
}

nkSession.sessionData.request(url, method: .get, encoding: URLEncoding.default, headers: headers, interceptor: NKInterceptor()).validate(statusCode: 200..<300).onURLSessionTaskCreation { task in
nkSession.sessionData.request(url, method: .get, encoding: URLEncoding.default, headers: headers, interceptor: NKInterceptor(nkCommonInstance: nkCommonInstance)).validate(statusCode: 200..<300).onURLSessionTaskCreation { task in
task.taskDescription = options.taskDescription
taskHandler(task)
}.response(queue: self.nkCommonInstance.backgroundQueue) { response in
Expand Down Expand Up @@ -461,7 +461,7 @@ public extension NextcloudKit {
return options.queue.async { completion(account, nil, .urlError) }
}

nkSession.sessionData.request(url, method: .get, encoding: URLEncoding.default, headers: headers, interceptor: NKInterceptor()).validate(statusCode: 200..<300).onURLSessionTaskCreation { task in
nkSession.sessionData.request(url, method: .get, encoding: URLEncoding.default, headers: headers, interceptor: NKInterceptor(nkCommonInstance: nkCommonInstance)).validate(statusCode: 200..<300).onURLSessionTaskCreation { task in
task.taskDescription = options.taskDescription
taskHandler(task)
}.response(queue: self.nkCommonInstance.backgroundQueue) { response in
Expand Down Expand Up @@ -495,7 +495,7 @@ public extension NextcloudKit {
return options.queue.async { completion(account, nil, nil, .urlError) }
}

nkSession.sessionData.request(url, method: .get, encoding: URLEncoding.default, headers: headers, interceptor: NKInterceptor()).validate(statusCode: 200..<300).onURLSessionTaskCreation { task in
nkSession.sessionData.request(url, method: .get, encoding: URLEncoding.default, headers: headers, interceptor: NKInterceptor(nkCommonInstance: nkCommonInstance)).validate(statusCode: 200..<300).onURLSessionTaskCreation { task in
task.taskDescription = options.taskDescription
taskHandler(task)
}.responseData(queue: self.nkCommonInstance.backgroundQueue) { response in
Expand Down Expand Up @@ -568,7 +568,7 @@ public extension NextcloudKit {
return options.queue.async { completion(account, nil, .urlError) }
}

nkSession.sessionData.request(url, method: .get, encoding: URLEncoding.default, headers: headers, interceptor: NKInterceptor()).validate(statusCode: 200..<300).onURLSessionTaskCreation { task in
nkSession.sessionData.request(url, method: .get, encoding: URLEncoding.default, headers: headers, interceptor: NKInterceptor(nkCommonInstance: nkCommonInstance)).validate(statusCode: 200..<300).onURLSessionTaskCreation { task in
task.taskDescription = options.taskDescription
taskHandler(task)
}.response(queue: self.nkCommonInstance.backgroundQueue) { response in
Expand Down Expand Up @@ -704,7 +704,7 @@ public extension NextcloudKit {
return options.queue.async { completion(account, activities, activityFirstKnown, activityLastGiven, nil, .urlError) }
}

nkSession.sessionData.request(url, method: .get, parameters: parameters, encoding: URLEncoding.default, headers: headers, interceptor: NKInterceptor()).validate(statusCode: 200..<300).onURLSessionTaskCreation { task in
nkSession.sessionData.request(url, method: .get, parameters: parameters, encoding: URLEncoding.default, headers: headers, interceptor: NKInterceptor(nkCommonInstance: nkCommonInstance)).validate(statusCode: 200..<300).onURLSessionTaskCreation { task in
task.taskDescription = options.taskDescription
taskHandler(task)
}.responseData(queue: self.nkCommonInstance.backgroundQueue) { response in
Expand Down Expand Up @@ -784,7 +784,7 @@ public extension NextcloudKit {
return options.queue.async { completion(account, nil, nil, .urlError) }
}

nkSession.sessionData.request(url, method: .get, encoding: URLEncoding.default, headers: headers, interceptor: NKInterceptor()).validate(statusCode: 200..<300).onURLSessionTaskCreation { task in
nkSession.sessionData.request(url, method: .get, encoding: URLEncoding.default, headers: headers, interceptor: NKInterceptor(nkCommonInstance: nkCommonInstance)).validate(statusCode: 200..<300).onURLSessionTaskCreation { task in
task.taskDescription = options.taskDescription
taskHandler(task)
}.responseData(queue: self.nkCommonInstance.backgroundQueue) { response in
Expand Down Expand Up @@ -871,7 +871,7 @@ public extension NextcloudKit {
}
let method = HTTPMethod(rawValue: method)

nkSession.sessionData.request(urlRequest, method: method, encoding: URLEncoding.default, headers: headers, interceptor: NKInterceptor()).validate(statusCode: 200..<300).onURLSessionTaskCreation { task in
nkSession.sessionData.request(urlRequest, method: method, encoding: URLEncoding.default, headers: headers, interceptor: NKInterceptor(nkCommonInstance: nkCommonInstance)).validate(statusCode: 200..<300).onURLSessionTaskCreation { task in
task.taskDescription = options.taskDescription
taskHandler(task)
}.response(queue: self.nkCommonInstance.backgroundQueue) { response in
Expand Down Expand Up @@ -910,7 +910,7 @@ public extension NextcloudKit {
return options.queue.async { completion(account, nil, nil, .urlError) }
}

nkSession.sessionData.request(url, method: .post, parameters: parameters, encoding: URLEncoding.default, headers: headers, interceptor: NKInterceptor()).validate(statusCode: 200..<300).onURLSessionTaskCreation { task in
nkSession.sessionData.request(url, method: .post, parameters: parameters, encoding: URLEncoding.default, headers: headers, interceptor: NKInterceptor(nkCommonInstance: nkCommonInstance)).validate(statusCode: 200..<300).onURLSessionTaskCreation { task in
task.taskDescription = options.taskDescription
taskHandler(task)
}.responseData(queue: self.nkCommonInstance.backgroundQueue) { response in
Expand Down Expand Up @@ -958,7 +958,7 @@ public extension NextcloudKit {
return options.queue.async { completion(account, nil, NKError(error: error)) }
}

nkSession.sessionData.request(urlRequest, interceptor: NKInterceptor()).validate(statusCode: 200..<300).onURLSessionTaskCreation { task in
nkSession.sessionData.request(urlRequest, interceptor: NKInterceptor(nkCommonInstance: nkCommonInstance)).validate(statusCode: 200..<300).onURLSessionTaskCreation { task in
task.taskDescription = options.taskDescription
taskHandler(task)
}.response(queue: self.nkCommonInstance.backgroundQueue) { response in
Expand Down
10 changes: 5 additions & 5 deletions Sources/NextcloudKit/NextcloudKit+Assistant.swift
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ public extension NextcloudKit {
return options.queue.async { completion(account, nil, nil, .urlError) }
}

nkSession.sessionData.request(url, method: .get, encoding: URLEncoding.default, headers: headers, interceptor: NKInterceptor()).validate(statusCode: 200..<300).onURLSessionTaskCreation { task in
nkSession.sessionData.request(url, method: .get, encoding: URLEncoding.default, headers: headers, interceptor: NKInterceptor(nkCommonInstance: nkCommonInstance)).validate(statusCode: 200..<300).onURLSessionTaskCreation { task in
task.taskDescription = options.taskDescription
taskHandler(task)
}.responseData(queue: self.nkCommonInstance.backgroundQueue) { response in
Expand Down Expand Up @@ -59,7 +59,7 @@ public extension NextcloudKit {
}
let parameters: [String: Any] = ["input": input, "type": typeId, "appId": appId, "identifier": identifier]

nkSession.sessionData.request(url, method: .post, parameters: parameters, encoding: URLEncoding.default, headers: headers, interceptor: NKInterceptor()).validate(statusCode: 200..<300).onURLSessionTaskCreation { task in
nkSession.sessionData.request(url, method: .post, parameters: parameters, encoding: URLEncoding.default, headers: headers, interceptor: NKInterceptor(nkCommonInstance: nkCommonInstance)).validate(statusCode: 200..<300).onURLSessionTaskCreation { task in
task.taskDescription = options.taskDescription
taskHandler(task)
}.responseData(queue: self.nkCommonInstance.backgroundQueue) { response in
Expand Down Expand Up @@ -96,7 +96,7 @@ public extension NextcloudKit {
return options.queue.async { completion(account, nil, nil, .urlError) }
}

nkSession.sessionData.request(url, method: .get, encoding: URLEncoding.default, headers: headers, interceptor: NKInterceptor()).validate(statusCode: 200..<300).onURLSessionTaskCreation { task in
nkSession.sessionData.request(url, method: .get, encoding: URLEncoding.default, headers: headers, interceptor: NKInterceptor(nkCommonInstance: nkCommonInstance)).validate(statusCode: 200..<300).onURLSessionTaskCreation { task in
task.taskDescription = options.taskDescription
taskHandler(task)
}.responseData(queue: self.nkCommonInstance.backgroundQueue) { response in
Expand Down Expand Up @@ -133,7 +133,7 @@ public extension NextcloudKit {
return options.queue.async { completion(account, nil, nil, .urlError) }
}

nkSession.sessionData.request(url, method: .delete, encoding: URLEncoding.default, headers: headers, interceptor: NKInterceptor()).validate(statusCode: 200..<300).onURLSessionTaskCreation { task in
nkSession.sessionData.request(url, method: .delete, encoding: URLEncoding.default, headers: headers, interceptor: NKInterceptor(nkCommonInstance: nkCommonInstance)).validate(statusCode: 200..<300).onURLSessionTaskCreation { task in
task.taskDescription = options.taskDescription
taskHandler(task)
}.responseData(queue: self.nkCommonInstance.backgroundQueue) { response in
Expand Down Expand Up @@ -170,7 +170,7 @@ public extension NextcloudKit {
return options.queue.async { completion(account, nil, nil, .urlError) }
}

nkSession.sessionData.request(url, method: .get, encoding: URLEncoding.default, headers: headers, interceptor: NKInterceptor()).validate(statusCode: 200..<300).onURLSessionTaskCreation { task in
nkSession.sessionData.request(url, method: .get, encoding: URLEncoding.default, headers: headers, interceptor: NKInterceptor(nkCommonInstance: nkCommonInstance)).validate(statusCode: 200..<300).onURLSessionTaskCreation { task in
task.taskDescription = options.taskDescription
taskHandler(task)
}.responseData(queue: self.nkCommonInstance.backgroundQueue) { response in
Expand Down
10 changes: 5 additions & 5 deletions Sources/NextcloudKit/NextcloudKit+Comments.swift
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ public extension NextcloudKit {
return options.queue.async { completion(account, nil, nil, NKError(error: error)) }
}

nkSession.sessionData.request(urlRequest, interceptor: NKInterceptor()).validate(statusCode: 200..<300).onURLSessionTaskCreation { task in
nkSession.sessionData.request(urlRequest, interceptor: NKInterceptor(nkCommonInstance: nkCommonInstance)).validate(statusCode: 200..<300).onURLSessionTaskCreation { task in
task.taskDescription = options.taskDescription
taskHandler(task)
}.responseData(queue: self.nkCommonInstance.backgroundQueue) { response in
Expand Down Expand Up @@ -82,7 +82,7 @@ public extension NextcloudKit {
return options.queue.async { completion(account, nil, NKError(error: error)) }
}

nkSession.sessionData.request(urlRequest, interceptor: NKInterceptor()).validate(statusCode: 200..<300).onURLSessionTaskCreation { task in
nkSession.sessionData.request(urlRequest, interceptor: NKInterceptor(nkCommonInstance: nkCommonInstance)).validate(statusCode: 200..<300).onURLSessionTaskCreation { task in
task.taskDescription = options.taskDescription
taskHandler(task)
}.response(queue: self.nkCommonInstance.backgroundQueue) { response in
Expand Down Expand Up @@ -129,7 +129,7 @@ public extension NextcloudKit {
return options.queue.async { completion(account, nil, NKError(error: error)) }
}

nkSession.sessionData.request(urlRequest, interceptor: NKInterceptor()).validate(statusCode: 200..<300).onURLSessionTaskCreation { task in
nkSession.sessionData.request(urlRequest, interceptor: NKInterceptor(nkCommonInstance: nkCommonInstance)).validate(statusCode: 200..<300).onURLSessionTaskCreation { task in
task.taskDescription = options.taskDescription
taskHandler(task)
}.response(queue: self.nkCommonInstance.backgroundQueue) { response in
Expand Down Expand Up @@ -162,7 +162,7 @@ public extension NextcloudKit {
return options.queue.async { completion(account, nil, .urlError) }
}

nkSession.sessionData.request(url, method: .delete, encoding: URLEncoding.default, headers: headers, interceptor: NKInterceptor()).validate(statusCode: 200..<300).onURLSessionTaskCreation { task in
nkSession.sessionData.request(url, method: .delete, encoding: URLEncoding.default, headers: headers, interceptor: NKInterceptor(nkCommonInstance: nkCommonInstance)).validate(statusCode: 200..<300).onURLSessionTaskCreation { task in
task.taskDescription = options.taskDescription
taskHandler(task)
}.response(queue: self.nkCommonInstance.backgroundQueue) { response in
Expand Down Expand Up @@ -207,7 +207,7 @@ public extension NextcloudKit {
return options.queue.async { completion(account, nil, NKError(error: error)) }
}

nkSession.sessionData.request(urlRequest, interceptor: NKInterceptor()).validate(statusCode: 200..<300).onURLSessionTaskCreation { task in
nkSession.sessionData.request(urlRequest, interceptor: NKInterceptor(nkCommonInstance: nkCommonInstance)).validate(statusCode: 200..<300).onURLSessionTaskCreation { task in
task.taskDescription = options.taskDescription
taskHandler(task)
}.response(queue: self.nkCommonInstance.backgroundQueue) { response in
Expand Down
Loading
Loading