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,37 @@
import Foundation
#if os(macOS)
import PostboxMac
#else
import Postbox
#endif
public class OutgoingScheduleInfoMessageAttribute: MessageAttribute {
public let scheduleTime: Int32
public init(scheduleTime: Int32) {
self.scheduleTime = scheduleTime
}
required public init(decoder: PostboxDecoder) {
self.scheduleTime = decoder.decodeInt32ForKey("t", orElse: 0)
}
public func encode(_ encoder: PostboxEncoder) {
encoder.encodeInt32(scheduleTime, forKey: "t")
}
public func withUpdatedScheduleTime(_ scheduleTime: Int32) -> OutgoingScheduleInfoMessageAttribute {
return OutgoingScheduleInfoMessageAttribute(scheduleTime: scheduleTime)
}
}
public extension Message {
var scheduleTime: Int32? {
for attribute in self.attributes {
if let attribute = attribute as? OutgoingScheduleInfoMessageAttribute {
return attribute.scheduleTime
}
}
return nil
}
}