session-ios/SessionMessagingKit/Message.swift

28 lines
893 B
Swift
Raw Normal View History

2020-11-05 04:16:45 +01:00
/// Abstract base class for `VisibleMessage` and `ControlMessage`.
@objc(SNMessage)
public class Message : NSObject, NSCoding { // Not a protocol for YapDatabase compatibility
public var id: String?
public var threadID: String?
public var sentTimestamp: UInt64?
public var receivedTimestamp: UInt64?
2020-11-05 06:10:49 +01:00
public override init() { }
2020-11-05 04:16:45 +01:00
public required init?(coder: NSCoder) {
preconditionFailure("init?(coder:) is abstract and must be overridden.")
}
public func encode(with coder: NSCoder) {
preconditionFailure("encode(with:) is abstract and must be overridden.")
}
2020-11-05 06:10:49 +01:00
public class func fromProto(_ proto: SNProtoContent) -> Self? {
preconditionFailure("fromProto(_:) is abstract and must be overridden.")
}
public func toProto() -> Any? {
preconditionFailure("toProto() is abstract and must be overridden.")
}
2020-11-05 04:16:45 +01:00
}