Skip to content

Commit

Permalink
Make lock related properties optional if no lock is available
Browse files Browse the repository at this point in the history
Signed-off-by: Claudio Cambra <[email protected]>
  • Loading branch information
claucambra committed Jan 22, 2025
1 parent a038a0c commit dee08e1
Show file tree
Hide file tree
Showing 4 changed files with 21 additions and 21 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -342,7 +342,7 @@ public final class FilesDatabaseManager: Sendable {
result.uploaded = false
result.chunkUploadId = UUID().uuidString
} else if status == .normal, metadata.isUpload {
result.chunkUploadId = ""
result.chunkUploadId = nil
}

Self.logger.debug(
Expand Down Expand Up @@ -389,7 +389,7 @@ public final class FilesDatabaseManager: Sendable {
date: \(metadata.date, privacy: .public)
lock: \(metadata.lock, privacy: .public)
lockTimeOut: \(metadata.lockTimeOut?.description ?? "", privacy: .public)
lockOwner: \(metadata.lockOwner, privacy: .public)
lockOwner: \(metadata.lockOwner ?? "", privacy: .public)
permissions: \(metadata.permissions, privacy: .public)
size: \(metadata.size, privacy: .public)
trashbinFileName: \(metadata.trashbinFileName, privacy: .public)
Expand Down
34 changes: 17 additions & 17 deletions Sources/NextcloudFileProviderKit/Metadata/ItemMetadata.swift
Original file line number Diff line number Diff line change
Expand Up @@ -68,10 +68,10 @@ public protocol ItemMetadata: Equatable {
var ownerId: String { get set }
var ownerDisplayName: String { get set }
var lock: Bool { get set }
var lockOwner: String { get set }
var lockOwnerEditor: String { get set }
var lockOwnerType: Int { get set }
var lockOwnerDisplayName: String { get set }
var lockOwner: String? { get set }
var lockOwnerEditor: String? { get set }
var lockOwnerType: Int? { get set }
var lockOwnerDisplayName: String? { get set }
var lockTime: Date? { get set } // Time the file was locked
var lockTimeOut: Date? { get set } // Time the file's lock will expire
var path: String { get set }
Expand Down Expand Up @@ -197,11 +197,11 @@ public class RealmItemMetadata: Object, ItemMetadata {
@Persisted public var note = ""
@Persisted public var ownerId = ""
@Persisted public var ownerDisplayName = ""
@Persisted public var lock = false
@Persisted public var lockOwner = ""
@Persisted public var lockOwnerEditor = ""
@Persisted public var lockOwnerType = 0
@Persisted public var lockOwnerDisplayName = ""
@Persisted public var lock: Bool = false
@Persisted public var lockOwner: String?
@Persisted public var lockOwnerEditor: String?
@Persisted public var lockOwnerType: Int?
@Persisted public var lockOwnerDisplayName: String?
@Persisted public var lockTime: Date? // Time the file was locked
@Persisted public var lockTimeOut: Date? // Time the file's lock will expire
@Persisted public var path = ""
Expand Down Expand Up @@ -334,10 +334,10 @@ public struct SendableItemMetadata: ItemMetadata, Sendable {
public var ownerId: String
public var ownerDisplayName: String
public var lock: Bool
public var lockOwner: String
public var lockOwnerEditor: String
public var lockOwnerType: Int
public var lockOwnerDisplayName: String
public var lockOwner: String?
public var lockOwnerEditor: String?
public var lockOwnerType: Int?
public var lockOwnerDisplayName: String?
public var lockTime: Date?
public var lockTimeOut: Date?
public var path: String
Expand Down Expand Up @@ -393,10 +393,10 @@ public struct SendableItemMetadata: ItemMetadata, Sendable {
ownerId: String,
ownerDisplayName: String,
lock: Bool = false,
lockOwner: String = "",
lockOwnerEditor: String = "",
lockOwnerType: Int = 0,
lockOwnerDisplayName: String = "",
lockOwner: String? = nil,
lockOwnerEditor: String? = nil,
lockOwnerType: Int? = nil,
lockOwnerDisplayName: String? = nil,
lockTime: Date? = nil,
lockTimeOut: Date? = nil,
path: String,
Expand Down
2 changes: 1 addition & 1 deletion Tests/NextcloudFileProviderKitTests/ItemCreateTests.swift
Original file line number Diff line number Diff line change
Expand Up @@ -483,6 +483,6 @@ final class ItemCreateTests: XCTestCase {
XCTAssertEqual(dbItem.directory, fileItemMetadata.directory)
XCTAssertEqual(dbItem.serverUrl, fileItemMetadata.serverUrl)
XCTAssertEqual(dbItem.ocId, createdItem.itemIdentifier.rawValue)
XCTAssertTrue(dbItem.chunkUploadId.isEmpty)
XCTAssertNil(dbItem.chunkUploadId)
}
}
2 changes: 1 addition & 1 deletion Tests/NextcloudFileProviderKitTests/ItemModifyTests.swift
Original file line number Diff line number Diff line change
Expand Up @@ -1321,6 +1321,6 @@ final class ItemModifyTests: XCTestCase {
)

let dbItem = try XCTUnwrap(Self.dbManager.itemMetadata(ocId: itemMetadata.ocId))
XCTAssertTrue(dbItem.chunkUploadId.isEmpty)
XCTAssertNil(dbItem.chunkUploadId)
}
}

0 comments on commit dee08e1

Please sign in to comment.