Refactor SyncCore

This commit is contained in:
Peter
2019-10-21 16:58:00 +04:00
parent 75aa77faa8
commit 10692a323e
1162 changed files with 12205 additions and 10925 deletions

View File

@@ -0,0 +1,29 @@
import Postbox
public struct TemporaryTwoStepPasswordToken: PostboxCoding, Equatable {
public let token: Data
public let validUntilDate: Int32
public let requiresBiometrics: Bool
public init(token: Data, validUntilDate: Int32, requiresBiometrics: Bool) {
self.token = token
self.validUntilDate = validUntilDate
self.requiresBiometrics = requiresBiometrics
}
public init(decoder: PostboxDecoder) {
self.token = decoder.decodeBytesForKey("t")!.makeData()
self.validUntilDate = decoder.decodeInt32ForKey("d", orElse: 0)
self.requiresBiometrics = decoder.decodeInt32ForKey("b", orElse: 0) != 0
}
public func encode(_ encoder: PostboxEncoder) {
encoder.encodeBytes(MemoryBuffer(data: self.token), forKey: "t")
encoder.encodeInt32(self.validUntilDate, forKey: "d")
encoder.encodeInt32(self.requiresBiometrics ? 1 : 0, forKey: "b")
}
public static func ==(lhs: TemporaryTwoStepPasswordToken, rhs: TemporaryTwoStepPasswordToken) -> Bool {
return lhs.token == rhs.token && lhs.validUntilDate == rhs.validUntilDate && lhs.requiresBiometrics == rhs.requiresBiometrics
}
}