openreplay/tracker/tracker-ios/Sources/ORTracker/Models/ORMessage.swift
Delirium c0da34c528
feat(ios): add Ios source (#1640)
* feat: add ios and rn source

* fix(ios): remove testing keys

* fix(tracker): change default path
2023-11-10 10:32:55 +01:00

42 lines
1.1 KiB
Swift

import UIKit
struct GenericMessage {
let typeRaw: UInt64
let type: ORMessageType?
let timestamp: UInt64
let body: Data
init?(data: Data, offset: inout Int) {
do {
typeRaw = try data.readPrimary(offset: &offset)
type = ORMessageType(rawValue: typeRaw)
timestamp = try data.readPrimary(offset: &offset)
body = try data.readData(offset: &offset)
} catch {
return nil
}
}
}
class ORMessage: NSObject {
let messageRaw: UInt64
let message: ORMessageType?
let timestamp: UInt64
init(messageType: ORMessageType) {
self.messageRaw = messageType.rawValue
self.message = messageType
self.timestamp = UInt64(Date().timeIntervalSince1970 * 1000)
}
init?(genericMessage: GenericMessage) {
self.messageRaw = genericMessage.typeRaw
self.message = genericMessage.type
self.timestamp = genericMessage.timestamp
}
func contentData() -> Data {
fatalError("This method should be overridden")
}
}