Skip to content
Snippets Groups Projects
E2ESendReport.swift 709 B
Newer Older
import Foundation

public struct E2ESendReport: Equatable {
Dariusz Rybicki's avatar
Dariusz Rybicki committed
  public init(
    roundList: [Int]?,
    messageId: Data?,
    timestamp: Int?
Dariusz Rybicki's avatar
Dariusz Rybicki committed
  ) {
    self.roundList = roundList
    self.messageId = messageId
    self.timestamp = timestamp
  }

  public var roundList: [Int]?
  public var messageId: Data?
  public var timestamp: Int?
extension E2ESendReport: Codable {
Dariusz Rybicki's avatar
Dariusz Rybicki committed
  enum CodingKeys: String, CodingKey {
    case roundList = "Rounds"
    case messageId = "MessageID"
    case timestamp = "Timestamp"
  }
Dariusz Rybicki's avatar
Dariusz Rybicki committed
  public static func decode(_ data: Data) throws -> Self {
    try JSONDecoder().decode(Self.self, from: data)
  }

  public func encode() throws -> Data {
    try JSONEncoder().encode(self)
  }