mirror of https://github.com/oxen-io/session-ios
mirror of https://github.com/oxen-io/session-ios
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
409 lines
14 KiB
409 lines
14 KiB
// |
|
// Copyright (c) 2018 Open Whisper Systems. All rights reserved. |
|
// |
|
|
|
import Foundation |
|
|
|
// WARNING: This code is generated. Only edit within the markers. |
|
|
|
public enum SignalIOSProtoError: Error { |
|
case invalidProtobuf(description: String) |
|
} |
|
|
|
// MARK: - SignalIOSProtoBackupSnapshotBackupEntity |
|
|
|
@objc public class SignalIOSProtoBackupSnapshotBackupEntity: NSObject { |
|
|
|
// MARK: - SignalIOSProtoBackupSnapshotBackupEntityType |
|
|
|
@objc public enum SignalIOSProtoBackupSnapshotBackupEntityType: Int32 { |
|
case unknown = 0 |
|
case migration = 1 |
|
case thread = 2 |
|
case interaction = 3 |
|
case attachment = 4 |
|
case misc = 5 |
|
} |
|
|
|
private class func SignalIOSProtoBackupSnapshotBackupEntityTypeWrap(_ value: IOSProtos_BackupSnapshot.BackupEntity.TypeEnum) -> SignalIOSProtoBackupSnapshotBackupEntityType { |
|
switch value { |
|
case .unknown: return .unknown |
|
case .migration: return .migration |
|
case .thread: return .thread |
|
case .interaction: return .interaction |
|
case .attachment: return .attachment |
|
case .misc: return .misc |
|
} |
|
} |
|
|
|
private class func SignalIOSProtoBackupSnapshotBackupEntityTypeUnwrap(_ value: SignalIOSProtoBackupSnapshotBackupEntityType) -> IOSProtos_BackupSnapshot.BackupEntity.TypeEnum { |
|
switch value { |
|
case .unknown: return .unknown |
|
case .migration: return .migration |
|
case .thread: return .thread |
|
case .interaction: return .interaction |
|
case .attachment: return .attachment |
|
case .misc: return .misc |
|
} |
|
} |
|
|
|
// MARK: - SignalIOSProtoBackupSnapshotBackupEntityBuilder |
|
|
|
@objc public class func builder(type: SignalIOSProtoBackupSnapshotBackupEntityType, entityData: Data, collection: String, key: String) -> SignalIOSProtoBackupSnapshotBackupEntityBuilder { |
|
return SignalIOSProtoBackupSnapshotBackupEntityBuilder(type: type, entityData: entityData, collection: collection, key: key) |
|
} |
|
|
|
// asBuilder() constructs a builder that reflects the proto's contents. |
|
@objc public func asBuilder() -> SignalIOSProtoBackupSnapshotBackupEntityBuilder { |
|
let builder = SignalIOSProtoBackupSnapshotBackupEntityBuilder(type: type, entityData: entityData, collection: collection, key: key) |
|
return builder |
|
} |
|
|
|
@objc public class SignalIOSProtoBackupSnapshotBackupEntityBuilder: NSObject { |
|
|
|
private var proto = IOSProtos_BackupSnapshot.BackupEntity() |
|
|
|
@objc fileprivate override init() {} |
|
|
|
@objc fileprivate init(type: SignalIOSProtoBackupSnapshotBackupEntityType, entityData: Data, collection: String, key: String) { |
|
super.init() |
|
|
|
setType(type) |
|
setEntityData(entityData) |
|
setCollection(collection) |
|
setKey(key) |
|
} |
|
|
|
@objc public func setType(_ valueParam: SignalIOSProtoBackupSnapshotBackupEntityType) { |
|
proto.type = SignalIOSProtoBackupSnapshotBackupEntityTypeUnwrap(valueParam) |
|
} |
|
|
|
@objc public func setEntityData(_ valueParam: Data) { |
|
proto.entityData = valueParam |
|
} |
|
|
|
@objc public func setCollection(_ valueParam: String) { |
|
proto.collection = valueParam |
|
} |
|
|
|
@objc public func setKey(_ valueParam: String) { |
|
proto.key = valueParam |
|
} |
|
|
|
@objc public func build() throws -> SignalIOSProtoBackupSnapshotBackupEntity { |
|
return try SignalIOSProtoBackupSnapshotBackupEntity.parseProto(proto) |
|
} |
|
|
|
@objc public func buildSerializedData() throws -> Data { |
|
return try SignalIOSProtoBackupSnapshotBackupEntity.parseProto(proto).serializedData() |
|
} |
|
} |
|
|
|
fileprivate let proto: IOSProtos_BackupSnapshot.BackupEntity |
|
|
|
@objc public let type: SignalIOSProtoBackupSnapshotBackupEntityType |
|
|
|
@objc public let entityData: Data |
|
|
|
@objc public let collection: String |
|
|
|
@objc public let key: String |
|
|
|
private init(proto: IOSProtos_BackupSnapshot.BackupEntity, |
|
type: SignalIOSProtoBackupSnapshotBackupEntityType, |
|
entityData: Data, |
|
collection: String, |
|
key: String) { |
|
self.proto = proto |
|
self.type = type |
|
self.entityData = entityData |
|
self.collection = collection |
|
self.key = key |
|
} |
|
|
|
@objc |
|
public func serializedData() throws -> Data { |
|
return try self.proto.serializedData() |
|
} |
|
|
|
@objc public class func parseData(_ serializedData: Data) throws -> SignalIOSProtoBackupSnapshotBackupEntity { |
|
let proto = try IOSProtos_BackupSnapshot.BackupEntity(serializedData: serializedData) |
|
return try parseProto(proto) |
|
} |
|
|
|
fileprivate class func parseProto(_ proto: IOSProtos_BackupSnapshot.BackupEntity) throws -> SignalIOSProtoBackupSnapshotBackupEntity { |
|
guard proto.hasType else { |
|
throw SignalIOSProtoError.invalidProtobuf(description: "\(logTag) missing required field: type") |
|
} |
|
let type = SignalIOSProtoBackupSnapshotBackupEntityTypeWrap(proto.type) |
|
|
|
guard proto.hasEntityData else { |
|
throw SignalIOSProtoError.invalidProtobuf(description: "\(logTag) missing required field: entityData") |
|
} |
|
let entityData = proto.entityData |
|
|
|
guard proto.hasCollection else { |
|
throw SignalIOSProtoError.invalidProtobuf(description: "\(logTag) missing required field: collection") |
|
} |
|
let collection = proto.collection |
|
|
|
guard proto.hasKey else { |
|
throw SignalIOSProtoError.invalidProtobuf(description: "\(logTag) missing required field: key") |
|
} |
|
let key = proto.key |
|
|
|
// MARK: - Begin Validation Logic for SignalIOSProtoBackupSnapshotBackupEntity - |
|
|
|
// MARK: - End Validation Logic for SignalIOSProtoBackupSnapshotBackupEntity - |
|
|
|
let result = SignalIOSProtoBackupSnapshotBackupEntity(proto: proto, |
|
type: type, |
|
entityData: entityData, |
|
collection: collection, |
|
key: key) |
|
return result |
|
} |
|
|
|
@objc public override var debugDescription: String { |
|
return "\(proto)" |
|
} |
|
} |
|
|
|
#if DEBUG |
|
|
|
extension SignalIOSProtoBackupSnapshotBackupEntity { |
|
@objc public func serializedDataIgnoringErrors() -> Data? { |
|
return try! self.serializedData() |
|
} |
|
} |
|
|
|
extension SignalIOSProtoBackupSnapshotBackupEntity.SignalIOSProtoBackupSnapshotBackupEntityBuilder { |
|
@objc public func buildIgnoringErrors() -> SignalIOSProtoBackupSnapshotBackupEntity? { |
|
return try! self.build() |
|
} |
|
} |
|
|
|
#endif |
|
|
|
// MARK: - SignalIOSProtoBackupSnapshot |
|
|
|
@objc public class SignalIOSProtoBackupSnapshot: NSObject { |
|
|
|
// MARK: - SignalIOSProtoBackupSnapshotBuilder |
|
|
|
@objc public class func builder() -> SignalIOSProtoBackupSnapshotBuilder { |
|
return SignalIOSProtoBackupSnapshotBuilder() |
|
} |
|
|
|
// asBuilder() constructs a builder that reflects the proto's contents. |
|
@objc public func asBuilder() -> SignalIOSProtoBackupSnapshotBuilder { |
|
let builder = SignalIOSProtoBackupSnapshotBuilder() |
|
builder.setEntity(entity) |
|
return builder |
|
} |
|
|
|
@objc public class SignalIOSProtoBackupSnapshotBuilder: NSObject { |
|
|
|
private var proto = IOSProtos_BackupSnapshot() |
|
|
|
@objc fileprivate override init() {} |
|
|
|
@objc public func addEntity(_ valueParam: SignalIOSProtoBackupSnapshotBackupEntity) { |
|
var items = proto.entity |
|
items.append(valueParam.proto) |
|
proto.entity = items |
|
} |
|
|
|
@objc public func setEntity(_ wrappedItems: [SignalIOSProtoBackupSnapshotBackupEntity]) { |
|
proto.entity = wrappedItems.map { $0.proto } |
|
} |
|
|
|
@objc public func build() throws -> SignalIOSProtoBackupSnapshot { |
|
return try SignalIOSProtoBackupSnapshot.parseProto(proto) |
|
} |
|
|
|
@objc public func buildSerializedData() throws -> Data { |
|
return try SignalIOSProtoBackupSnapshot.parseProto(proto).serializedData() |
|
} |
|
} |
|
|
|
fileprivate let proto: IOSProtos_BackupSnapshot |
|
|
|
@objc public let entity: [SignalIOSProtoBackupSnapshotBackupEntity] |
|
|
|
private init(proto: IOSProtos_BackupSnapshot, |
|
entity: [SignalIOSProtoBackupSnapshotBackupEntity]) { |
|
self.proto = proto |
|
self.entity = entity |
|
} |
|
|
|
@objc |
|
public func serializedData() throws -> Data { |
|
return try self.proto.serializedData() |
|
} |
|
|
|
@objc public class func parseData(_ serializedData: Data) throws -> SignalIOSProtoBackupSnapshot { |
|
let proto = try IOSProtos_BackupSnapshot(serializedData: serializedData) |
|
return try parseProto(proto) |
|
} |
|
|
|
fileprivate class func parseProto(_ proto: IOSProtos_BackupSnapshot) throws -> SignalIOSProtoBackupSnapshot { |
|
var entity: [SignalIOSProtoBackupSnapshotBackupEntity] = [] |
|
entity = try proto.entity.map { try SignalIOSProtoBackupSnapshotBackupEntity.parseProto($0) } |
|
|
|
// MARK: - Begin Validation Logic for SignalIOSProtoBackupSnapshot - |
|
|
|
// MARK: - End Validation Logic for SignalIOSProtoBackupSnapshot - |
|
|
|
let result = SignalIOSProtoBackupSnapshot(proto: proto, |
|
entity: entity) |
|
return result |
|
} |
|
|
|
@objc public override var debugDescription: String { |
|
return "\(proto)" |
|
} |
|
} |
|
|
|
#if DEBUG |
|
|
|
extension SignalIOSProtoBackupSnapshot { |
|
@objc public func serializedDataIgnoringErrors() -> Data? { |
|
return try! self.serializedData() |
|
} |
|
} |
|
|
|
extension SignalIOSProtoBackupSnapshot.SignalIOSProtoBackupSnapshotBuilder { |
|
@objc public func buildIgnoringErrors() -> SignalIOSProtoBackupSnapshot? { |
|
return try! self.build() |
|
} |
|
} |
|
|
|
#endif |
|
|
|
// MARK: - SignalIOSProtoDeviceName |
|
|
|
@objc public class SignalIOSProtoDeviceName: NSObject { |
|
|
|
// MARK: - SignalIOSProtoDeviceNameBuilder |
|
|
|
@objc public class func builder(ephemeralPublic: Data, syntheticIv: Data, ciphertext: Data) -> SignalIOSProtoDeviceNameBuilder { |
|
return SignalIOSProtoDeviceNameBuilder(ephemeralPublic: ephemeralPublic, syntheticIv: syntheticIv, ciphertext: ciphertext) |
|
} |
|
|
|
// asBuilder() constructs a builder that reflects the proto's contents. |
|
@objc public func asBuilder() -> SignalIOSProtoDeviceNameBuilder { |
|
let builder = SignalIOSProtoDeviceNameBuilder(ephemeralPublic: ephemeralPublic, syntheticIv: syntheticIv, ciphertext: ciphertext) |
|
return builder |
|
} |
|
|
|
@objc public class SignalIOSProtoDeviceNameBuilder: NSObject { |
|
|
|
private var proto = IOSProtos_DeviceName() |
|
|
|
@objc fileprivate override init() {} |
|
|
|
@objc fileprivate init(ephemeralPublic: Data, syntheticIv: Data, ciphertext: Data) { |
|
super.init() |
|
|
|
setEphemeralPublic(ephemeralPublic) |
|
setSyntheticIv(syntheticIv) |
|
setCiphertext(ciphertext) |
|
} |
|
|
|
@objc public func setEphemeralPublic(_ valueParam: Data) { |
|
proto.ephemeralPublic = valueParam |
|
} |
|
|
|
@objc public func setSyntheticIv(_ valueParam: Data) { |
|
proto.syntheticIv = valueParam |
|
} |
|
|
|
@objc public func setCiphertext(_ valueParam: Data) { |
|
proto.ciphertext = valueParam |
|
} |
|
|
|
@objc public func build() throws -> SignalIOSProtoDeviceName { |
|
return try SignalIOSProtoDeviceName.parseProto(proto) |
|
} |
|
|
|
@objc public func buildSerializedData() throws -> Data { |
|
return try SignalIOSProtoDeviceName.parseProto(proto).serializedData() |
|
} |
|
} |
|
|
|
fileprivate let proto: IOSProtos_DeviceName |
|
|
|
@objc public let ephemeralPublic: Data |
|
|
|
@objc public let syntheticIv: Data |
|
|
|
@objc public let ciphertext: Data |
|
|
|
private init(proto: IOSProtos_DeviceName, |
|
ephemeralPublic: Data, |
|
syntheticIv: Data, |
|
ciphertext: Data) { |
|
self.proto = proto |
|
self.ephemeralPublic = ephemeralPublic |
|
self.syntheticIv = syntheticIv |
|
self.ciphertext = ciphertext |
|
} |
|
|
|
@objc |
|
public func serializedData() throws -> Data { |
|
return try self.proto.serializedData() |
|
} |
|
|
|
@objc public class func parseData(_ serializedData: Data) throws -> SignalIOSProtoDeviceName { |
|
let proto = try IOSProtos_DeviceName(serializedData: serializedData) |
|
return try parseProto(proto) |
|
} |
|
|
|
fileprivate class func parseProto(_ proto: IOSProtos_DeviceName) throws -> SignalIOSProtoDeviceName { |
|
guard proto.hasEphemeralPublic else { |
|
throw SignalIOSProtoError.invalidProtobuf(description: "\(logTag) missing required field: ephemeralPublic") |
|
} |
|
let ephemeralPublic = proto.ephemeralPublic |
|
|
|
guard proto.hasSyntheticIv else { |
|
throw SignalIOSProtoError.invalidProtobuf(description: "\(logTag) missing required field: syntheticIv") |
|
} |
|
let syntheticIv = proto.syntheticIv |
|
|
|
guard proto.hasCiphertext else { |
|
throw SignalIOSProtoError.invalidProtobuf(description: "\(logTag) missing required field: ciphertext") |
|
} |
|
let ciphertext = proto.ciphertext |
|
|
|
// MARK: - Begin Validation Logic for SignalIOSProtoDeviceName - |
|
|
|
// MARK: - End Validation Logic for SignalIOSProtoDeviceName - |
|
|
|
let result = SignalIOSProtoDeviceName(proto: proto, |
|
ephemeralPublic: ephemeralPublic, |
|
syntheticIv: syntheticIv, |
|
ciphertext: ciphertext) |
|
return result |
|
} |
|
|
|
@objc public override var debugDescription: String { |
|
return "\(proto)" |
|
} |
|
} |
|
|
|
#if DEBUG |
|
|
|
extension SignalIOSProtoDeviceName { |
|
@objc public func serializedDataIgnoringErrors() -> Data? { |
|
return try! self.serializedData() |
|
} |
|
} |
|
|
|
extension SignalIOSProtoDeviceName.SignalIOSProtoDeviceNameBuilder { |
|
@objc public func buildIgnoringErrors() -> SignalIOSProtoDeviceName? { |
|
return try! self.build() |
|
} |
|
} |
|
|
|
#endif
|
|
|