Merge branch 'charlesmchen/ud5'

This commit is contained in:
Matthew Chen 2018-10-03 09:18:37 -04:00
commit f37fce2df9
9 changed files with 299 additions and 196 deletions

View File

@ -151,6 +151,12 @@ public class MessageFetcherJob: NSObject {
if let content = try params.optionalBase64EncodedData(key: "content") {
builder.setContent(content)
}
if let serverTimestamp: UInt64 = try params.optional(key: "serverTimestamp") {
builder.setServerTimestamp(serverTimestamp)
}
if let serverGuid: String = try params.optional(key: "guid") {
builder.setServerGuid(serverGuid)
}
return try builder.build()
} catch {

View File

@ -390,7 +390,9 @@ private class MockIncomingMessage: TSIncomingMessage {
attachmentIds: [],
expiresInSeconds: 0,
quotedMessage: nil,
contactShare: nil)
contactShare: nil,
serverTimestamp: nil,
serverGuid: nil)
}
required init(coder: NSCoder) {

View File

@ -3726,7 +3726,9 @@ typedef OWSContact * (^OWSContactBlock)(YapDatabaseReadWriteTransaction *transac
attachmentIds:@[]
expiresInSeconds:0
quotedMessage:nil
contactShare:nil];
contactShare:nil
serverTimestamp:nil
serverGuid:nil];
[message markAsReadNowWithSendReadReceipt:NO transaction:transaction];
break;
}
@ -3765,7 +3767,9 @@ typedef OWSContact * (^OWSContactBlock)(YapDatabaseReadWriteTransaction *transac
]
expiresInSeconds:0
quotedMessage:nil
contactShare:nil];
contactShare:nil
serverTimestamp:nil
serverGuid:nil];
[message markAsReadNowWithSendReadReceipt:NO transaction:transaction];
break;
}
@ -4225,7 +4229,9 @@ typedef OWSContact * (^OWSContactBlock)(YapDatabaseReadWriteTransaction *transac
attachmentIds:[NSMutableArray new]
expiresInSeconds:0
quotedMessage:nil
contactShare:nil];
contactShare:nil
serverTimestamp:nil
serverGuid:nil];
[message markAsReadNowWithSendReadReceipt:NO transaction:transaction];
}
{
@ -4265,7 +4271,9 @@ typedef OWSContact * (^OWSContactBlock)(YapDatabaseReadWriteTransaction *transac
attachmentIds:[NSMutableArray new]
expiresInSeconds:60
quotedMessage:nil
contactShare:nil];
contactShare:nil
serverTimestamp:nil
serverGuid:nil];
// private setter to avoid starting expire machinery.
message.read = YES;
[message save];
@ -4586,7 +4594,9 @@ typedef OWSContact * (^OWSContactBlock)(YapDatabaseReadWriteTransaction *transac
attachmentIds:attachmentIds
expiresInSeconds:0
quotedMessage:quotedMessage
contactShare:nil];
contactShare:nil
serverTimestamp:nil
serverGuid:nil];
[message markAsReadNowWithSendReadReceipt:NO transaction:transaction];
return message;
}

View File

@ -16,24 +16,29 @@ option java_outer_classname = "SignalServiceProtos";
message Envelope {
enum Type {
UNKNOWN = 0;
CIPHERTEXT = 1;
KEY_EXCHANGE = 2;
PREKEY_BUNDLE = 3;
RECEIPT = 5;
UNKNOWN = 0;
CIPHERTEXT = 1;
KEY_EXCHANGE = 2;
PREKEY_BUNDLE = 3;
RECEIPT = 5;
UNIDENTIFIED_SENDER = 6;
}
// @required
optional Type type = 1;
optional Type type = 1;
// @required
optional string source = 2;
optional string source = 2;
// @required
optional uint32 sourceDevice = 7;
optional string relay = 3;
optional uint32 sourceDevice = 7;
optional string relay = 3;
// @required
optional uint64 timestamp = 5;
optional bytes legacyMessage = 6; // Contains an encrypted DataMessage
optional bytes content = 8; // Contains an encrypted Content
optional uint64 timestamp = 5;
optional bytes legacyMessage = 6; // Contains an encrypted DataMessage
optional bytes content = 8; // Contains an encrypted Content
// We may eventually want to make this required.
optional string serverGuid = 9;
// We may eventually want to make this required.
optional uint64 serverTimestamp = 10;
}
message Content {

View File

@ -12,6 +12,9 @@ NS_ASSUME_NONNULL_BEGIN
@interface TSIncomingMessage : TSMessage <OWSReadTracking>
@property (nonatomic, readonly, nullable) NSNumber *serverTimestamp;
@property (nonatomic, readonly, nullable) NSString *serverGuid;
- (instancetype)initMessageWithTimestamp:(uint64_t)timestamp
inThread:(nullable TSThread *)thread
messageBody:(nullable NSString *)body
@ -51,7 +54,9 @@ NS_ASSUME_NONNULL_BEGIN
attachmentIds:(NSArray<NSString *> *)attachmentIds
expiresInSeconds:(uint32_t)expiresInSeconds
quotedMessage:(nullable TSQuotedMessage *)quotedMessage
contactShare:(nullable OWSContact *)contactShare NS_DESIGNATED_INITIALIZER;
contactShare:(nullable OWSContact *)contactShare
serverTimestamp:(nullable NSNumber *)serverTimestamp
serverGuid:(nullable NSString *)serverGuid NS_DESIGNATED_INITIALIZER;
- (instancetype)initWithCoder:(NSCoder *)coder NS_DESIGNATED_INITIALIZER;

View File

@ -20,6 +20,9 @@ NS_ASSUME_NONNULL_BEGIN
@property (nonatomic, getter=wasRead) BOOL read;
@property (nonatomic, nullable) NSNumber *serverTimestamp;
@property (nonatomic, nullable) NSString *serverGuid;
@end
#pragma mark -
@ -45,6 +48,8 @@ NS_ASSUME_NONNULL_BEGIN
expiresInSeconds:(uint32_t)expiresInSeconds
quotedMessage:(nullable TSQuotedMessage *)quotedMessage
contactShare:(nullable OWSContact *)contactShare
serverTimestamp:(nullable NSNumber *)serverTimestamp
serverGuid:(nullable NSString *)serverGuid
{
self = [super initMessageWithTimestamp:timestamp
inThread:thread
@ -62,6 +67,8 @@ NS_ASSUME_NONNULL_BEGIN
_authorId = authorId;
_sourceDeviceId = sourceDeviceId;
_read = NO;
_serverTimestamp = serverTimestamp;
_serverGuid = serverGuid;
return self;
}

View File

@ -1110,6 +1110,8 @@ NS_ASSUME_NONNULL_BEGIN
NSString *body = dataMessage.body;
NSData *groupId = dataMessage.group ? dataMessage.group.id : nil;
OWSContact *_Nullable contact = [OWSContacts contactForDataMessage:dataMessage transaction:transaction];
NSNumber *_Nullable serverTimestamp = (envelope.hasServerTimestamp ? @(envelope.serverTimestamp) : nil);
NSString *_Nullable serverGuid = (envelope.hasServerGuid ? envelope.serverGuid : nil);
if (dataMessage.group.type == SSKProtoGroupContextTypeRequestInfo) {
[self handleGroupInfoRequest:envelope dataMessage:dataMessage transaction:transaction];
@ -1223,7 +1225,9 @@ NS_ASSUME_NONNULL_BEGIN
attachmentIds:attachmentIds
expiresInSeconds:dataMessage.expireTimer
quotedMessage:quotedMessage
contactShare:contact];
contactShare:contact
serverTimestamp:serverTimestamp
serverGuid:serverGuid];
[self finalizeIncomingMessage:incomingMessage
thread:oldGroupThread
@ -1262,7 +1266,9 @@ NS_ASSUME_NONNULL_BEGIN
attachmentIds:attachmentIds
expiresInSeconds:dataMessage.expireTimer
quotedMessage:quotedMessage
contactShare:contact];
contactShare:contact
serverTimestamp:serverTimestamp
serverGuid:serverGuid];
[self finalizeIncomingMessage:incomingMessage
thread:thread

View File

@ -22,6 +22,7 @@ public enum SSKProtoError: Error {
case keyExchange = 2
case prekeyBundle = 3
case receipt = 5
case unidentifiedSender = 6
}
private class func SSKProtoEnvelopeTypeWrap(_ value: SignalServiceProtos_Envelope.TypeEnum) -> SSKProtoEnvelopeType {
@ -31,6 +32,7 @@ public enum SSKProtoError: Error {
case .keyExchange: return .keyExchange
case .prekeyBundle: return .prekeyBundle
case .receipt: return .receipt
case .unidentifiedSender: return .unidentifiedSender
}
}
@ -41,6 +43,7 @@ public enum SSKProtoError: Error {
case .keyExchange: return .keyExchange
case .prekeyBundle: return .prekeyBundle
case .receipt: return .receipt
case .unidentifiedSender: return .unidentifiedSender
}
}
@ -93,6 +96,14 @@ public enum SSKProtoError: Error {
proto.content = valueParam
}
@objc public func setServerGuid(_ valueParam: String) {
proto.serverGuid = valueParam
}
@objc public func setServerTimestamp(_ valueParam: UInt64) {
proto.serverTimestamp = valueParam
}
@objc public func build() throws -> SSKProtoEnvelope {
return try SSKProtoEnvelope.parseProto(proto)
}
@ -142,6 +153,23 @@ public enum SSKProtoError: Error {
return proto.hasContent
}
@objc public var serverGuid: String? {
guard proto.hasServerGuid else {
return nil
}
return proto.serverGuid
}
@objc public var hasServerGuid: Bool {
return proto.hasServerGuid
}
@objc public var serverTimestamp: UInt64 {
return proto.serverTimestamp
}
@objc public var hasServerTimestamp: Bool {
return proto.hasServerTimestamp
}
private init(proto: SignalServiceProtos_Envelope,
type: SSKProtoEnvelopeType,
source: String,

View File

@ -1,10 +1,6 @@
// DO NOT EDIT.
//
// Generated by the Swift generator plugin for the protocol buffer compiler.
// Source: SignalService.proto
// Copyright (c) 2018 Open Whisper Systems. All rights reserved.
//
// For information on using the generated types, please see the documenation:
// https://github.com/apple/swift-protobuf/
//*
// Copyright (C) 2014-2016 Open Whisper Systems
@ -22,7 +18,7 @@ import SwiftProtobuf
// incompatible with the version of SwiftProtobuf to which you are linking.
// Please ensure that your are building against the same version of the API
// that was used to generate this file.
fileprivate struct _GeneratedWithProtocGenSwiftVersion: SwiftProtobuf.ProtobufAPIVersionCheck {
private struct _GeneratedWithProtocGenSwiftVersion: SwiftProtobuf.ProtobufAPIVersionCheck {
struct _2: SwiftProtobuf.ProtobufAPIVersion_2 {}
typealias Version = _2
}
@ -101,6 +97,26 @@ struct SignalServiceProtos_Envelope {
/// Clears the value of `content`. Subsequent reads from it will return its default value.
mutating func clearContent() {self._content = nil}
/// We may eventually want to make this required.
var serverGuid: String {
get {return _serverGuid ?? String()}
set {_serverGuid = newValue}
}
/// Returns true if `serverGuid` has been explicitly set.
var hasServerGuid: Bool {return self._serverGuid != nil}
/// Clears the value of `serverGuid`. Subsequent reads from it will return its default value.
mutating func clearServerGuid() {self._serverGuid = nil}
/// We may eventually want to make this required.
var serverTimestamp: UInt64 {
get {return _serverTimestamp ?? 0}
set {_serverTimestamp = newValue}
}
/// Returns true if `serverTimestamp` has been explicitly set.
var hasServerTimestamp: Bool {return self._serverTimestamp != nil}
/// Clears the value of `serverTimestamp`. Subsequent reads from it will return its default value.
mutating func clearServerTimestamp() {self._serverTimestamp = nil}
var unknownFields = SwiftProtobuf.UnknownStorage()
enum TypeEnum: SwiftProtobuf.Enum {
@ -110,6 +126,7 @@ struct SignalServiceProtos_Envelope {
case keyExchange // = 2
case prekeyBundle // = 3
case receipt // = 5
case unidentifiedSender // = 6
init() {
self = .unknown
@ -122,6 +139,7 @@ struct SignalServiceProtos_Envelope {
case 2: self = .keyExchange
case 3: self = .prekeyBundle
case 5: self = .receipt
case 6: self = .unidentifiedSender
default: return nil
}
}
@ -133,6 +151,7 @@ struct SignalServiceProtos_Envelope {
case .keyExchange: return 2
case .prekeyBundle: return 3
case .receipt: return 5
case .unidentifiedSender: return 6
}
}
@ -140,13 +159,15 @@ struct SignalServiceProtos_Envelope {
init() {}
fileprivate var _type: SignalServiceProtos_Envelope.TypeEnum? = nil
fileprivate var _source: String? = nil
fileprivate var _sourceDevice: UInt32? = nil
fileprivate var _relay: String? = nil
fileprivate var _timestamp: UInt64? = nil
fileprivate var _legacyMessage: Data? = nil
fileprivate var _content: Data? = nil
fileprivate var _type: SignalServiceProtos_Envelope.TypeEnum?
fileprivate var _source: String?
fileprivate var _sourceDevice: UInt32?
fileprivate var _relay: String?
fileprivate var _timestamp: UInt64?
fileprivate var _legacyMessage: Data?
fileprivate var _content: Data?
fileprivate var _serverGuid: String?
fileprivate var _serverTimestamp: UInt64?
}
#if swift(>=4.2)
@ -304,8 +325,8 @@ struct SignalServiceProtos_CallMessage {
init() {}
fileprivate var _id: UInt64? = nil
fileprivate var _sessionDescription: String? = nil
fileprivate var _id: UInt64?
fileprivate var _sessionDescription: String?
}
struct Answer {
@ -339,8 +360,8 @@ struct SignalServiceProtos_CallMessage {
init() {}
fileprivate var _id: UInt64? = nil
fileprivate var _sessionDescription: String? = nil
fileprivate var _id: UInt64?
fileprivate var _sessionDescription: String?
}
struct IceUpdate {
@ -392,10 +413,10 @@ struct SignalServiceProtos_CallMessage {
init() {}
fileprivate var _id: UInt64? = nil
fileprivate var _sdpMid: String? = nil
fileprivate var _sdpMlineIndex: UInt32? = nil
fileprivate var _sdp: String? = nil
fileprivate var _id: UInt64?
fileprivate var _sdpMid: String?
fileprivate var _sdpMlineIndex: UInt32?
fileprivate var _sdp: String?
}
struct Busy {
@ -417,7 +438,7 @@ struct SignalServiceProtos_CallMessage {
init() {}
fileprivate var _id: UInt64? = nil
fileprivate var _id: UInt64?
}
struct Hangup {
@ -439,7 +460,7 @@ struct SignalServiceProtos_CallMessage {
init() {}
fileprivate var _id: UInt64? = nil
fileprivate var _id: UInt64?
}
init() {}
@ -667,9 +688,9 @@ struct SignalServiceProtos_DataMessage {
init() {}
fileprivate var _id: UInt64? = nil
fileprivate var _author: String? = nil
fileprivate var _text: String? = nil
fileprivate var _id: UInt64?
fileprivate var _author: String?
fileprivate var _text: String?
}
struct Contact {
@ -784,12 +805,12 @@ struct SignalServiceProtos_DataMessage {
init() {}
fileprivate var _givenName: String? = nil
fileprivate var _familyName: String? = nil
fileprivate var _prefix: String? = nil
fileprivate var _suffix: String? = nil
fileprivate var _middleName: String? = nil
fileprivate var _displayName: String? = nil
fileprivate var _givenName: String?
fileprivate var _familyName: String?
fileprivate var _prefix: String?
fileprivate var _suffix: String?
fileprivate var _middleName: String?
fileprivate var _displayName: String?
}
struct Phone {
@ -860,9 +881,9 @@ struct SignalServiceProtos_DataMessage {
init() {}
fileprivate var _value: String? = nil
fileprivate var _type: SignalServiceProtos_DataMessage.Contact.Phone.TypeEnum? = nil
fileprivate var _label: String? = nil
fileprivate var _value: String?
fileprivate var _type: SignalServiceProtos_DataMessage.Contact.Phone.TypeEnum?
fileprivate var _label: String?
}
struct Email {
@ -933,9 +954,9 @@ struct SignalServiceProtos_DataMessage {
init() {}
fileprivate var _value: String? = nil
fileprivate var _type: SignalServiceProtos_DataMessage.Contact.Email.TypeEnum? = nil
fileprivate var _label: String? = nil
fileprivate var _value: String?
fileprivate var _type: SignalServiceProtos_DataMessage.Contact.Email.TypeEnum?
fileprivate var _label: String?
}
struct PostalAddress {
@ -1057,15 +1078,15 @@ struct SignalServiceProtos_DataMessage {
init() {}
fileprivate var _type: SignalServiceProtos_DataMessage.Contact.PostalAddress.TypeEnum? = nil
fileprivate var _label: String? = nil
fileprivate var _street: String? = nil
fileprivate var _pobox: String? = nil
fileprivate var _neighborhood: String? = nil
fileprivate var _city: String? = nil
fileprivate var _region: String? = nil
fileprivate var _postcode: String? = nil
fileprivate var _country: String? = nil
fileprivate var _type: SignalServiceProtos_DataMessage.Contact.PostalAddress.TypeEnum?
fileprivate var _label: String?
fileprivate var _street: String?
fileprivate var _pobox: String?
fileprivate var _neighborhood: String?
fileprivate var _city: String?
fileprivate var _region: String?
fileprivate var _postcode: String?
fileprivate var _country: String?
}
struct Avatar {
@ -1134,7 +1155,7 @@ struct SignalServiceProtos_NullMessage {
init() {}
fileprivate var _padding: Data? = nil
fileprivate var _padding: Data?
}
struct SignalServiceProtos_ReceiptMessage {
@ -1184,7 +1205,7 @@ struct SignalServiceProtos_ReceiptMessage {
init() {}
fileprivate var _type: SignalServiceProtos_ReceiptMessage.TypeEnum? = nil
fileprivate var _type: SignalServiceProtos_ReceiptMessage.TypeEnum?
}
#if swift(>=4.2)
@ -1270,10 +1291,10 @@ struct SignalServiceProtos_Verified {
init() {}
fileprivate var _destination: String? = nil
fileprivate var _identityKey: Data? = nil
fileprivate var _state: SignalServiceProtos_Verified.State? = nil
fileprivate var _nullMessage: Data? = nil
fileprivate var _destination: String?
fileprivate var _identityKey: Data?
fileprivate var _state: SignalServiceProtos_Verified.State?
fileprivate var _nullMessage: Data?
}
#if swift(>=4.2)
@ -1537,7 +1558,7 @@ struct SignalServiceProtos_SyncMessage {
init() {}
fileprivate var _type: SignalServiceProtos_SyncMessage.Request.TypeEnum? = nil
fileprivate var _type: SignalServiceProtos_SyncMessage.Request.TypeEnum?
}
struct Read {
@ -1569,8 +1590,8 @@ struct SignalServiceProtos_SyncMessage {
init() {}
fileprivate var _sender: String? = nil
fileprivate var _timestamp: UInt64? = nil
fileprivate var _sender: String?
fileprivate var _timestamp: UInt64?
}
struct Configuration {
@ -1591,7 +1612,7 @@ struct SignalServiceProtos_SyncMessage {
init() {}
fileprivate var _readReceipts: Bool? = nil
fileprivate var _readReceipts: Bool?
}
init() {}
@ -1722,16 +1743,16 @@ struct SignalServiceProtos_AttachmentPointer {
init() {}
fileprivate var _id: UInt64? = nil
fileprivate var _contentType: String? = nil
fileprivate var _key: Data? = nil
fileprivate var _size: UInt32? = nil
fileprivate var _thumbnail: Data? = nil
fileprivate var _digest: Data? = nil
fileprivate var _fileName: String? = nil
fileprivate var _flags: UInt32? = nil
fileprivate var _width: UInt32? = nil
fileprivate var _height: UInt32? = nil
fileprivate var _id: UInt64?
fileprivate var _contentType: String?
fileprivate var _key: Data?
fileprivate var _size: UInt32?
fileprivate var _thumbnail: Data?
fileprivate var _digest: Data?
fileprivate var _fileName: String?
fileprivate var _flags: UInt32?
fileprivate var _width: UInt32?
fileprivate var _height: UInt32?
}
#if swift(>=4.2)
@ -1947,8 +1968,8 @@ struct SignalServiceProtos_ContactDetails {
init() {}
fileprivate var _contentType: String? = nil
fileprivate var _length: UInt32? = nil
fileprivate var _contentType: String?
fileprivate var _length: UInt32?
}
init() {}
@ -2059,8 +2080,8 @@ struct SignalServiceProtos_GroupDetails {
init() {}
fileprivate var _contentType: String? = nil
fileprivate var _length: UInt32? = nil
fileprivate var _contentType: String?
fileprivate var _length: UInt32?
}
init() {}
@ -2070,7 +2091,7 @@ struct SignalServiceProtos_GroupDetails {
// MARK: - Code below here is support for the SwiftProtobuf runtime.
fileprivate let _protobuf_package = "SignalServiceProtos"
private let _protobuf_package = "SignalServiceProtos"
extension SignalServiceProtos_Envelope: SwiftProtobuf.Message, SwiftProtobuf._MessageImplementationBase, SwiftProtobuf._ProtoNameProviding {
static let protoMessageName: String = _protobuf_package + ".Envelope"
@ -2082,6 +2103,8 @@ extension SignalServiceProtos_Envelope: SwiftProtobuf.Message, SwiftProtobuf._Me
5: .same(proto: "timestamp"),
6: .same(proto: "legacyMessage"),
8: .same(proto: "content"),
9: .same(proto: "serverGuid"),
10: .same(proto: "serverTimestamp")
]
mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {
@ -2094,6 +2117,8 @@ extension SignalServiceProtos_Envelope: SwiftProtobuf.Message, SwiftProtobuf._Me
case 6: try decoder.decodeSingularBytesField(value: &self._legacyMessage)
case 7: try decoder.decodeSingularUInt32Field(value: &self._sourceDevice)
case 8: try decoder.decodeSingularBytesField(value: &self._content)
case 9: try decoder.decodeSingularStringField(value: &self._serverGuid)
case 10: try decoder.decodeSingularUInt64Field(value: &self._serverTimestamp)
default: break
}
}
@ -2121,6 +2146,12 @@ extension SignalServiceProtos_Envelope: SwiftProtobuf.Message, SwiftProtobuf._Me
if let v = self._content {
try visitor.visitSingularBytesField(value: v, fieldNumber: 8)
}
if let v = self._serverGuid {
try visitor.visitSingularStringField(value: v, fieldNumber: 9)
}
if let v = self._serverTimestamp {
try visitor.visitSingularUInt64Field(value: v, fieldNumber: 10)
}
try unknownFields.traverse(visitor: &visitor)
}
@ -2132,6 +2163,8 @@ extension SignalServiceProtos_Envelope: SwiftProtobuf.Message, SwiftProtobuf._Me
if self._timestamp != other._timestamp {return false}
if self._legacyMessage != other._legacyMessage {return false}
if self._content != other._content {return false}
if self._serverGuid != other._serverGuid {return false}
if self._serverTimestamp != other._serverTimestamp {return false}
if unknownFields != other.unknownFields {return false}
return true
}
@ -2144,6 +2177,7 @@ extension SignalServiceProtos_Envelope.TypeEnum: SwiftProtobuf._ProtoNameProvidi
2: .same(proto: "KEY_EXCHANGE"),
3: .same(proto: "PREKEY_BUNDLE"),
5: .same(proto: "RECEIPT"),
6: .same(proto: "UNIDENTIFIED_SENDER")
]
}
@ -2154,15 +2188,15 @@ extension SignalServiceProtos_Content: SwiftProtobuf.Message, SwiftProtobuf._Mes
2: .same(proto: "syncMessage"),
3: .same(proto: "callMessage"),
4: .same(proto: "nullMessage"),
5: .same(proto: "receiptMessage"),
5: .same(proto: "receiptMessage")
]
fileprivate class _StorageClass {
var _dataMessage: SignalServiceProtos_DataMessage? = nil
var _syncMessage: SignalServiceProtos_SyncMessage? = nil
var _callMessage: SignalServiceProtos_CallMessage? = nil
var _nullMessage: SignalServiceProtos_NullMessage? = nil
var _receiptMessage: SignalServiceProtos_ReceiptMessage? = nil
var _dataMessage: SignalServiceProtos_DataMessage?
var _syncMessage: SignalServiceProtos_SyncMessage?
var _callMessage: SignalServiceProtos_CallMessage?
var _nullMessage: SignalServiceProtos_NullMessage?
var _receiptMessage: SignalServiceProtos_ReceiptMessage?
static let defaultInstance = _StorageClass()
@ -2248,16 +2282,16 @@ extension SignalServiceProtos_CallMessage: SwiftProtobuf.Message, SwiftProtobuf.
3: .same(proto: "iceUpdate"),
4: .same(proto: "hangup"),
5: .same(proto: "busy"),
6: .same(proto: "profileKey"),
6: .same(proto: "profileKey")
]
fileprivate class _StorageClass {
var _offer: SignalServiceProtos_CallMessage.Offer? = nil
var _answer: SignalServiceProtos_CallMessage.Answer? = nil
var _offer: SignalServiceProtos_CallMessage.Offer?
var _answer: SignalServiceProtos_CallMessage.Answer?
var _iceUpdate: [SignalServiceProtos_CallMessage.IceUpdate] = []
var _hangup: SignalServiceProtos_CallMessage.Hangup? = nil
var _busy: SignalServiceProtos_CallMessage.Busy? = nil
var _profileKey: Data? = nil
var _hangup: SignalServiceProtos_CallMessage.Hangup?
var _busy: SignalServiceProtos_CallMessage.Busy?
var _profileKey: Data?
static let defaultInstance = _StorageClass()
@ -2345,7 +2379,7 @@ extension SignalServiceProtos_CallMessage.Offer: SwiftProtobuf.Message, SwiftPro
static let protoMessageName: String = SignalServiceProtos_CallMessage.protoMessageName + ".Offer"
static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
1: .same(proto: "id"),
2: .same(proto: "sessionDescription"),
2: .same(proto: "sessionDescription")
]
mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {
@ -2380,7 +2414,7 @@ extension SignalServiceProtos_CallMessage.Answer: SwiftProtobuf.Message, SwiftPr
static let protoMessageName: String = SignalServiceProtos_CallMessage.protoMessageName + ".Answer"
static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
1: .same(proto: "id"),
2: .same(proto: "sessionDescription"),
2: .same(proto: "sessionDescription")
]
mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {
@ -2417,7 +2451,7 @@ extension SignalServiceProtos_CallMessage.IceUpdate: SwiftProtobuf.Message, Swif
1: .same(proto: "id"),
2: .same(proto: "sdpMid"),
3: .same(proto: "sdpMLineIndex"),
4: .same(proto: "sdp"),
4: .same(proto: "sdp")
]
mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {
@ -2461,7 +2495,7 @@ extension SignalServiceProtos_CallMessage.IceUpdate: SwiftProtobuf.Message, Swif
extension SignalServiceProtos_CallMessage.Busy: SwiftProtobuf.Message, SwiftProtobuf._MessageImplementationBase, SwiftProtobuf._ProtoNameProviding {
static let protoMessageName: String = SignalServiceProtos_CallMessage.protoMessageName + ".Busy"
static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
1: .same(proto: "id"),
1: .same(proto: "id")
]
mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {
@ -2490,7 +2524,7 @@ extension SignalServiceProtos_CallMessage.Busy: SwiftProtobuf.Message, SwiftProt
extension SignalServiceProtos_CallMessage.Hangup: SwiftProtobuf.Message, SwiftProtobuf._MessageImplementationBase, SwiftProtobuf._ProtoNameProviding {
static let protoMessageName: String = SignalServiceProtos_CallMessage.protoMessageName + ".Hangup"
static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
1: .same(proto: "id"),
1: .same(proto: "id")
]
mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {
@ -2527,18 +2561,18 @@ extension SignalServiceProtos_DataMessage: SwiftProtobuf.Message, SwiftProtobuf.
6: .same(proto: "profileKey"),
7: .same(proto: "timestamp"),
8: .same(proto: "quote"),
9: .same(proto: "contact"),
9: .same(proto: "contact")
]
fileprivate class _StorageClass {
var _body: String? = nil
var _body: String?
var _attachments: [SignalServiceProtos_AttachmentPointer] = []
var _group: SignalServiceProtos_GroupContext? = nil
var _flags: UInt32? = nil
var _expireTimer: UInt32? = nil
var _profileKey: Data? = nil
var _timestamp: UInt64? = nil
var _quote: SignalServiceProtos_DataMessage.Quote? = nil
var _group: SignalServiceProtos_GroupContext?
var _flags: UInt32?
var _expireTimer: UInt32?
var _profileKey: Data?
var _timestamp: UInt64?
var _quote: SignalServiceProtos_DataMessage.Quote?
var _contact: [SignalServiceProtos_DataMessage.Contact] = []
static let defaultInstance = _StorageClass()
@ -2645,7 +2679,7 @@ extension SignalServiceProtos_DataMessage.Flags: SwiftProtobuf._ProtoNameProvidi
static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
1: .same(proto: "END_SESSION"),
2: .same(proto: "EXPIRATION_TIMER_UPDATE"),
4: .same(proto: "PROFILE_KEY_UPDATE"),
4: .same(proto: "PROFILE_KEY_UPDATE")
]
}
@ -2655,7 +2689,7 @@ extension SignalServiceProtos_DataMessage.Quote: SwiftProtobuf.Message, SwiftPro
1: .same(proto: "id"),
2: .same(proto: "author"),
3: .same(proto: "text"),
4: .same(proto: "attachments"),
4: .same(proto: "attachments")
]
mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {
@ -2702,14 +2736,14 @@ extension SignalServiceProtos_DataMessage.Quote.QuotedAttachment: SwiftProtobuf.
1: .same(proto: "contentType"),
2: .same(proto: "fileName"),
3: .same(proto: "thumbnail"),
4: .same(proto: "flags"),
4: .same(proto: "flags")
]
fileprivate class _StorageClass {
var _contentType: String? = nil
var _fileName: String? = nil
var _thumbnail: SignalServiceProtos_AttachmentPointer? = nil
var _flags: UInt32? = nil
var _contentType: String?
var _fileName: String?
var _thumbnail: SignalServiceProtos_AttachmentPointer?
var _flags: UInt32?
static let defaultInstance = _StorageClass()
@ -2783,7 +2817,7 @@ extension SignalServiceProtos_DataMessage.Quote.QuotedAttachment: SwiftProtobuf.
extension SignalServiceProtos_DataMessage.Quote.QuotedAttachment.Flags: SwiftProtobuf._ProtoNameProviding {
static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
1: .same(proto: "VOICE_MESSAGE"),
1: .same(proto: "VOICE_MESSAGE")
]
}
@ -2795,16 +2829,16 @@ extension SignalServiceProtos_DataMessage.Contact: SwiftProtobuf.Message, SwiftP
4: .same(proto: "email"),
5: .same(proto: "address"),
6: .same(proto: "avatar"),
7: .same(proto: "organization"),
7: .same(proto: "organization")
]
fileprivate class _StorageClass {
var _name: SignalServiceProtos_DataMessage.Contact.Name? = nil
var _name: SignalServiceProtos_DataMessage.Contact.Name?
var _number: [SignalServiceProtos_DataMessage.Contact.Phone] = []
var _email: [SignalServiceProtos_DataMessage.Contact.Email] = []
var _address: [SignalServiceProtos_DataMessage.Contact.PostalAddress] = []
var _avatar: SignalServiceProtos_DataMessage.Contact.Avatar? = nil
var _organization: String? = nil
var _avatar: SignalServiceProtos_DataMessage.Contact.Avatar?
var _organization: String?
static let defaultInstance = _StorageClass()
@ -2896,7 +2930,7 @@ extension SignalServiceProtos_DataMessage.Contact.Name: SwiftProtobuf.Message, S
3: .same(proto: "prefix"),
4: .same(proto: "suffix"),
5: .same(proto: "middleName"),
6: .same(proto: "displayName"),
6: .same(proto: "displayName")
]
mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {
@ -2952,7 +2986,7 @@ extension SignalServiceProtos_DataMessage.Contact.Phone: SwiftProtobuf.Message,
static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
1: .same(proto: "value"),
2: .same(proto: "type"),
3: .same(proto: "label"),
3: .same(proto: "label")
]
mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {
@ -2993,7 +3027,7 @@ extension SignalServiceProtos_DataMessage.Contact.Phone.TypeEnum: SwiftProtobuf.
1: .same(proto: "HOME"),
2: .same(proto: "MOBILE"),
3: .same(proto: "WORK"),
4: .same(proto: "CUSTOM"),
4: .same(proto: "CUSTOM")
]
}
@ -3002,7 +3036,7 @@ extension SignalServiceProtos_DataMessage.Contact.Email: SwiftProtobuf.Message,
static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
1: .same(proto: "value"),
2: .same(proto: "type"),
3: .same(proto: "label"),
3: .same(proto: "label")
]
mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {
@ -3043,7 +3077,7 @@ extension SignalServiceProtos_DataMessage.Contact.Email.TypeEnum: SwiftProtobuf.
1: .same(proto: "HOME"),
2: .same(proto: "MOBILE"),
3: .same(proto: "WORK"),
4: .same(proto: "CUSTOM"),
4: .same(proto: "CUSTOM")
]
}
@ -3058,7 +3092,7 @@ extension SignalServiceProtos_DataMessage.Contact.PostalAddress: SwiftProtobuf.M
6: .same(proto: "city"),
7: .same(proto: "region"),
8: .same(proto: "postcode"),
9: .same(proto: "country"),
9: .same(proto: "country")
]
mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {
@ -3128,7 +3162,7 @@ extension SignalServiceProtos_DataMessage.Contact.PostalAddress.TypeEnum: SwiftP
static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
1: .same(proto: "HOME"),
2: .same(proto: "WORK"),
3: .same(proto: "CUSTOM"),
3: .same(proto: "CUSTOM")
]
}
@ -3136,12 +3170,12 @@ extension SignalServiceProtos_DataMessage.Contact.Avatar: SwiftProtobuf.Message,
static let protoMessageName: String = SignalServiceProtos_DataMessage.Contact.protoMessageName + ".Avatar"
static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
1: .same(proto: "avatar"),
2: .same(proto: "isProfile"),
2: .same(proto: "isProfile")
]
fileprivate class _StorageClass {
var _avatar: SignalServiceProtos_AttachmentPointer? = nil
var _isProfile: Bool? = nil
var _avatar: SignalServiceProtos_AttachmentPointer?
var _isProfile: Bool?
static let defaultInstance = _StorageClass()
@ -3204,7 +3238,7 @@ extension SignalServiceProtos_DataMessage.Contact.Avatar: SwiftProtobuf.Message,
extension SignalServiceProtos_NullMessage: SwiftProtobuf.Message, SwiftProtobuf._MessageImplementationBase, SwiftProtobuf._ProtoNameProviding {
static let protoMessageName: String = _protobuf_package + ".NullMessage"
static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
1: .same(proto: "padding"),
1: .same(proto: "padding")
]
mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {
@ -3234,7 +3268,7 @@ extension SignalServiceProtos_ReceiptMessage: SwiftProtobuf.Message, SwiftProtob
static let protoMessageName: String = _protobuf_package + ".ReceiptMessage"
static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
1: .same(proto: "type"),
2: .same(proto: "timestamp"),
2: .same(proto: "timestamp")
]
mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {
@ -3268,7 +3302,7 @@ extension SignalServiceProtos_ReceiptMessage: SwiftProtobuf.Message, SwiftProtob
extension SignalServiceProtos_ReceiptMessage.TypeEnum: SwiftProtobuf._ProtoNameProviding {
static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
0: .same(proto: "DELIVERY"),
1: .same(proto: "READ"),
1: .same(proto: "READ")
]
}
@ -3278,7 +3312,7 @@ extension SignalServiceProtos_Verified: SwiftProtobuf.Message, SwiftProtobuf._Me
1: .same(proto: "destination"),
2: .same(proto: "identityKey"),
3: .same(proto: "state"),
4: .same(proto: "nullMessage"),
4: .same(proto: "nullMessage")
]
mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {
@ -3323,7 +3357,7 @@ extension SignalServiceProtos_Verified.State: SwiftProtobuf._ProtoNameProviding
static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
0: .same(proto: "DEFAULT"),
1: .same(proto: "VERIFIED"),
2: .same(proto: "UNVERIFIED"),
2: .same(proto: "UNVERIFIED")
]
}
@ -3338,19 +3372,19 @@ extension SignalServiceProtos_SyncMessage: SwiftProtobuf.Message, SwiftProtobuf.
6: .same(proto: "blocked"),
7: .same(proto: "verified"),
9: .same(proto: "configuration"),
8: .same(proto: "padding"),
8: .same(proto: "padding")
]
fileprivate class _StorageClass {
var _sent: SignalServiceProtos_SyncMessage.Sent? = nil
var _contacts: SignalServiceProtos_SyncMessage.Contacts? = nil
var _groups: SignalServiceProtos_SyncMessage.Groups? = nil
var _request: SignalServiceProtos_SyncMessage.Request? = nil
var _sent: SignalServiceProtos_SyncMessage.Sent?
var _contacts: SignalServiceProtos_SyncMessage.Contacts?
var _groups: SignalServiceProtos_SyncMessage.Groups?
var _request: SignalServiceProtos_SyncMessage.Request?
var _read: [SignalServiceProtos_SyncMessage.Read] = []
var _blocked: SignalServiceProtos_SyncMessage.Blocked? = nil
var _verified: SignalServiceProtos_Verified? = nil
var _configuration: SignalServiceProtos_SyncMessage.Configuration? = nil
var _padding: Data? = nil
var _blocked: SignalServiceProtos_SyncMessage.Blocked?
var _verified: SignalServiceProtos_Verified?
var _configuration: SignalServiceProtos_SyncMessage.Configuration?
var _padding: Data?
static let defaultInstance = _StorageClass()
@ -3458,14 +3492,14 @@ extension SignalServiceProtos_SyncMessage.Sent: SwiftProtobuf.Message, SwiftProt
1: .same(proto: "destination"),
2: .same(proto: "timestamp"),
3: .same(proto: "message"),
4: .same(proto: "expirationStartTimestamp"),
4: .same(proto: "expirationStartTimestamp")
]
fileprivate class _StorageClass {
var _destination: String? = nil
var _timestamp: UInt64? = nil
var _message: SignalServiceProtos_DataMessage? = nil
var _expirationStartTimestamp: UInt64? = nil
var _destination: String?
var _timestamp: UInt64?
var _message: SignalServiceProtos_DataMessage?
var _expirationStartTimestamp: UInt64?
static let defaultInstance = _StorageClass()
@ -3541,12 +3575,12 @@ extension SignalServiceProtos_SyncMessage.Contacts: SwiftProtobuf.Message, Swift
static let protoMessageName: String = SignalServiceProtos_SyncMessage.protoMessageName + ".Contacts"
static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
1: .same(proto: "blob"),
2: .same(proto: "isComplete"),
2: .same(proto: "isComplete")
]
fileprivate class _StorageClass {
var _blob: SignalServiceProtos_AttachmentPointer? = nil
var _isComplete: Bool? = nil
var _blob: SignalServiceProtos_AttachmentPointer?
var _isComplete: Bool?
static let defaultInstance = _StorageClass()
@ -3609,11 +3643,11 @@ extension SignalServiceProtos_SyncMessage.Contacts: SwiftProtobuf.Message, Swift
extension SignalServiceProtos_SyncMessage.Groups: SwiftProtobuf.Message, SwiftProtobuf._MessageImplementationBase, SwiftProtobuf._ProtoNameProviding {
static let protoMessageName: String = SignalServiceProtos_SyncMessage.protoMessageName + ".Groups"
static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
1: .same(proto: "blob"),
1: .same(proto: "blob")
]
fileprivate class _StorageClass {
var _blob: SignalServiceProtos_AttachmentPointer? = nil
var _blob: SignalServiceProtos_AttachmentPointer?
static let defaultInstance = _StorageClass()
@ -3671,7 +3705,7 @@ extension SignalServiceProtos_SyncMessage.Blocked: SwiftProtobuf.Message, SwiftP
static let protoMessageName: String = SignalServiceProtos_SyncMessage.protoMessageName + ".Blocked"
static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
1: .same(proto: "numbers"),
2: .same(proto: "groupIds"),
2: .same(proto: "groupIds")
]
mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {
@ -3705,7 +3739,7 @@ extension SignalServiceProtos_SyncMessage.Blocked: SwiftProtobuf.Message, SwiftP
extension SignalServiceProtos_SyncMessage.Request: SwiftProtobuf.Message, SwiftProtobuf._MessageImplementationBase, SwiftProtobuf._ProtoNameProviding {
static let protoMessageName: String = SignalServiceProtos_SyncMessage.protoMessageName + ".Request"
static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
1: .same(proto: "type"),
1: .same(proto: "type")
]
mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {
@ -3737,7 +3771,7 @@ extension SignalServiceProtos_SyncMessage.Request.TypeEnum: SwiftProtobuf._Proto
1: .same(proto: "CONTACTS"),
2: .same(proto: "GROUPS"),
3: .same(proto: "BLOCKED"),
4: .same(proto: "CONFIGURATION"),
4: .same(proto: "CONFIGURATION")
]
}
@ -3745,7 +3779,7 @@ extension SignalServiceProtos_SyncMessage.Read: SwiftProtobuf.Message, SwiftProt
static let protoMessageName: String = SignalServiceProtos_SyncMessage.protoMessageName + ".Read"
static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
1: .same(proto: "sender"),
2: .same(proto: "timestamp"),
2: .same(proto: "timestamp")
]
mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {
@ -3779,7 +3813,7 @@ extension SignalServiceProtos_SyncMessage.Read: SwiftProtobuf.Message, SwiftProt
extension SignalServiceProtos_SyncMessage.Configuration: SwiftProtobuf.Message, SwiftProtobuf._MessageImplementationBase, SwiftProtobuf._ProtoNameProviding {
static let protoMessageName: String = SignalServiceProtos_SyncMessage.protoMessageName + ".Configuration"
static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
1: .same(proto: "readReceipts"),
1: .same(proto: "readReceipts")
]
mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {
@ -3817,7 +3851,7 @@ extension SignalServiceProtos_AttachmentPointer: SwiftProtobuf.Message, SwiftPro
7: .same(proto: "fileName"),
8: .same(proto: "flags"),
9: .same(proto: "width"),
10: .same(proto: "height"),
10: .same(proto: "height")
]
mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {
@ -3890,7 +3924,7 @@ extension SignalServiceProtos_AttachmentPointer: SwiftProtobuf.Message, SwiftPro
extension SignalServiceProtos_AttachmentPointer.Flags: SwiftProtobuf._ProtoNameProviding {
static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
1: .same(proto: "VOICE_MESSAGE"),
1: .same(proto: "VOICE_MESSAGE")
]
}
@ -3901,15 +3935,15 @@ extension SignalServiceProtos_GroupContext: SwiftProtobuf.Message, SwiftProtobuf
2: .same(proto: "type"),
3: .same(proto: "name"),
4: .same(proto: "members"),
5: .same(proto: "avatar"),
5: .same(proto: "avatar")
]
fileprivate class _StorageClass {
var _id: Data? = nil
var _type: SignalServiceProtos_GroupContext.TypeEnum? = nil
var _name: String? = nil
var _id: Data?
var _type: SignalServiceProtos_GroupContext.TypeEnum?
var _name: String?
var _members: [String] = []
var _avatar: SignalServiceProtos_AttachmentPointer? = nil
var _avatar: SignalServiceProtos_AttachmentPointer?
static let defaultInstance = _StorageClass()
@ -3993,7 +4027,7 @@ extension SignalServiceProtos_GroupContext.TypeEnum: SwiftProtobuf._ProtoNamePro
1: .same(proto: "UPDATE"),
2: .same(proto: "DELIVER"),
3: .same(proto: "QUIT"),
4: .same(proto: "REQUEST_INFO"),
4: .same(proto: "REQUEST_INFO")
]
}
@ -4007,18 +4041,18 @@ extension SignalServiceProtos_ContactDetails: SwiftProtobuf.Message, SwiftProtob
5: .same(proto: "verified"),
6: .same(proto: "profileKey"),
7: .same(proto: "blocked"),
8: .same(proto: "expireTimer"),
8: .same(proto: "expireTimer")
]
fileprivate class _StorageClass {
var _number: String? = nil
var _name: String? = nil
var _avatar: SignalServiceProtos_ContactDetails.Avatar? = nil
var _color: String? = nil
var _verified: SignalServiceProtos_Verified? = nil
var _profileKey: Data? = nil
var _blocked: Bool? = nil
var _expireTimer: UInt32? = nil
var _number: String?
var _name: String?
var _avatar: SignalServiceProtos_ContactDetails.Avatar?
var _color: String?
var _verified: SignalServiceProtos_Verified?
var _profileKey: Data?
var _blocked: Bool?
var _expireTimer: UInt32?
static let defaultInstance = _StorageClass()
@ -4118,7 +4152,7 @@ extension SignalServiceProtos_ContactDetails.Avatar: SwiftProtobuf.Message, Swif
static let protoMessageName: String = SignalServiceProtos_ContactDetails.protoMessageName + ".Avatar"
static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
1: .same(proto: "contentType"),
2: .same(proto: "length"),
2: .same(proto: "length")
]
mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {
@ -4159,18 +4193,18 @@ extension SignalServiceProtos_GroupDetails: SwiftProtobuf.Message, SwiftProtobuf
5: .same(proto: "active"),
6: .same(proto: "expireTimer"),
7: .same(proto: "color"),
8: .same(proto: "blocked"),
8: .same(proto: "blocked")
]
fileprivate class _StorageClass {
var _id: Data? = nil
var _name: String? = nil
var _id: Data?
var _name: String?
var _members: [String] = []
var _avatar: SignalServiceProtos_GroupDetails.Avatar? = nil
var _active: Bool? = nil
var _expireTimer: UInt32? = nil
var _color: String? = nil
var _blocked: Bool? = nil
var _avatar: SignalServiceProtos_GroupDetails.Avatar?
var _active: Bool?
var _expireTimer: UInt32?
var _color: String?
var _blocked: Bool?
static let defaultInstance = _StorageClass()
@ -4270,7 +4304,7 @@ extension SignalServiceProtos_GroupDetails.Avatar: SwiftProtobuf.Message, SwiftP
static let protoMessageName: String = SignalServiceProtos_GroupDetails.protoMessageName + ".Avatar"
static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
1: .same(proto: "contentType"),
2: .same(proto: "length"),
2: .same(proto: "length")
]
mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {