Skip to content

Commit df428c3

Browse files
committed
merge knowledge vectors during pullRequest
1 parent 4f1c762 commit df428c3

File tree

2 files changed

+6
-3
lines changed

2 files changed

+6
-3
lines changed

Sources/ParseCareKit/Models/PCKRevisionRecord.swift

+5-2
Original file line numberDiff line numberDiff line change
@@ -112,12 +112,15 @@ struct PCKRevisionRecord: ParseObject, Equatable, Codable {
112112
logicalClock, clock, clockUUID
113113
}
114114

115-
func convertToCareKit() throws -> OCKRevisionRecord {
115+
func convertToCareKit(_ vector: OCKRevisionRecord.KnowledgeVector? = nil) throws -> OCKRevisionRecord {
116116
guard let entities = entities,
117-
let knowledgeVector = knowledgeVector else {
117+
var knowledgeVector = knowledgeVector else {
118118
throw ParseCareKitError.couldntUnwrapSelf
119119
}
120120
let careKitEntities = try entities.compactMap { try $0.careKit() }
121+
if let vector = vector {
122+
knowledgeVector.merge(with: vector)
123+
}
121124
return OCKRevisionRecord(entities: careKitEntities,
122125
knowledgeVector: knowledgeVector)
123126
}

Sources/ParseCareKit/ParseRemote.swift

+1-1
Original file line numberDiff line numberDiff line change
@@ -280,7 +280,7 @@ public class ParseRemote: OCKRemoteSynchronizable {
280280
total: revisions.count)
281281
// 2.1 Merge revisions
282282
for (index, revision) in revisions.enumerated() {
283-
let record = try await revision.fetchEntities().convertToCareKit()
283+
let record = try await revision.fetchEntities().convertToCareKit(knowledgeVector)
284284
mergeRevision(record)
285285
self.notifyRevisionProgress(index + 1,
286286
total: revisions.count)

0 commit comments

Comments
 (0)