Respond to CR.

// FREEBIE
This commit is contained in:
Matthew Chen 2017-04-13 16:05:59 -04:00
parent 40dcc7c873
commit fa2ff8158c
8 changed files with 111 additions and 96 deletions

View File

@ -39,12 +39,16 @@ message Content {
message CallMessage {
message Offer {
optional uint64 id = 1;
optional string description = 2;
// We've renamed the description field on iOS to avoid
// conflicts with [NSObject description].
optional string sessionDescription = 2;
}
message Answer {
optional uint64 id = 1;
optional string description = 2;
// We've renamed the description field on iOS to avoid
// conflicts with [NSObject description].
optional string sessionDescription = 2;
}
message IceUpdate {

View File

@ -23,7 +23,6 @@ typedef NS_ENUM(NSInteger, TSGroupMetaMessage) {
@interface TSMessage : TSInteraction
@property (nonatomic, readonly) NSMutableArray<NSString *> *attachmentIds;
// A map of attachment id-to-filename.
@property (nullable, nonatomic) NSString *body;
@property (nonatomic) TSGroupMetaMessage groupMetaMessage;
@property (nonatomic) uint32_t expiresInSeconds;

View File

@ -57,6 +57,7 @@ typedef NS_ENUM(NSInteger, TSOutgoingMessageState) {
@property BOOL hasSyncedTranscript;
@property NSString *customMessage;
@property (atomic, readonly) NSString *mostRecentFailureText;
// A map of attachment id-to-filename.
@property (nonatomic, readonly) NSMutableDictionary<NSString *, NSString *> *attachmentFilenameMap;
/**

View File

@ -1,5 +1,6 @@
// Created by Michael Kirk on 12/1/16.
// Copyright © 2016 Open Whisper Systems. All rights reserved.
//
// Copyright (c) 2017 Open Whisper Systems. All rights reserved.
//
#import "OWSCallAnswerMessage.h"
#import "OWSSignalServiceProtos.pb.h"
@ -26,7 +27,7 @@ NS_ASSUME_NONNULL_BEGIN
OWSSignalServiceProtosCallMessageAnswerBuilder *builder = [OWSSignalServiceProtosCallMessageAnswerBuilder new];
builder.id = self.callId;
[builder setDescription:self.sessionDescription];
builder.sessionDescription = self.sessionDescription;
return [builder build];
}

View File

@ -1,5 +1,6 @@
// Created by Michael Kirk on 12/1/16.
// Copyright © 2016 Open Whisper Systems. All rights reserved.
//
// Copyright (c) 2017 Open Whisper Systems. All rights reserved.
//
#import "OWSCallOfferMessage.h"
#import "OWSSignalServiceProtos.pb.h"
@ -26,7 +27,7 @@ NS_ASSUME_NONNULL_BEGIN
OWSSignalServiceProtosCallMessageOfferBuilder *builder = [OWSSignalServiceProtosCallMessageOfferBuilder new];
builder.id = self.callId;
[builder setDescription:self.sessionDescription];
builder.sessionDescription = self.sessionDescription;
return [builder build];
}

View File

@ -1,4 +1,6 @@
// Generated by the protocol buffer compiler. DO NOT EDIT!
//
// Copyright (c) 2017 Open Whisper Systems. All rights reserved.
//
#import <ProtocolBuffers/ProtocolBuffers.h>
@ -374,18 +376,18 @@ NSString *NSStringFromOWSSignalServiceProtosGroupContextType(OWSSignalServicePro
@end
#define Offer_id @"id"
#define Offer_description @"pb_description"
#define Offer_sessionDescription @"sessionDescription"
@interface OWSSignalServiceProtosCallMessageOffer : PBGeneratedMessage<GeneratedMessageProtocol> {
@private
BOOL hasId_:1;
BOOL hasDescription_:1;
BOOL hasSessionDescription_:1;
UInt64 id;
NSString* pb_description;
NSString* sessionDescription;
}
- (BOOL) hasId;
- (BOOL) hasDescription;
- (BOOL) hasSessionDescription;
@property (readonly) UInt64 id;
@property (readonly, strong) NSString* pb_description;
@property (readonly, strong) NSString* sessionDescription;
+ (instancetype) defaultInstance;
- (instancetype) defaultInstance;
@ -427,25 +429,25 @@ NSString *NSStringFromOWSSignalServiceProtosGroupContextType(OWSSignalServicePro
- (OWSSignalServiceProtosCallMessageOfferBuilder*) setId:(UInt64) value;
- (OWSSignalServiceProtosCallMessageOfferBuilder*) clearId;
- (BOOL) hasDescription;
- (NSString*) pb_description;
- (OWSSignalServiceProtosCallMessageOfferBuilder*) setDescription:(NSString*) value;
- (OWSSignalServiceProtosCallMessageOfferBuilder*) clearDescription;
- (BOOL) hasSessionDescription;
- (NSString*) sessionDescription;
- (OWSSignalServiceProtosCallMessageOfferBuilder*) setSessionDescription:(NSString*) value;
- (OWSSignalServiceProtosCallMessageOfferBuilder*) clearSessionDescription;
@end
#define Answer_id @"id"
#define Answer_description @"pb_description"
#define Answer_sessionDescription @"sessionDescription"
@interface OWSSignalServiceProtosCallMessageAnswer : PBGeneratedMessage<GeneratedMessageProtocol> {
@private
BOOL hasId_:1;
BOOL hasDescription_:1;
BOOL hasSessionDescription_:1;
UInt64 id;
NSString* pb_description;
NSString* sessionDescription;
}
- (BOOL) hasId;
- (BOOL) hasDescription;
- (BOOL) hasSessionDescription;
@property (readonly) UInt64 id;
@property (readonly, strong) NSString* pb_description;
@property (readonly, strong) NSString* sessionDescription;
+ (instancetype) defaultInstance;
- (instancetype) defaultInstance;
@ -487,10 +489,10 @@ NSString *NSStringFromOWSSignalServiceProtosGroupContextType(OWSSignalServicePro
- (OWSSignalServiceProtosCallMessageAnswerBuilder*) setId:(UInt64) value;
- (OWSSignalServiceProtosCallMessageAnswerBuilder*) clearId;
- (BOOL) hasDescription;
- (NSString*) pb_description;
- (OWSSignalServiceProtosCallMessageAnswerBuilder*) setDescription:(NSString*) value;
- (OWSSignalServiceProtosCallMessageAnswerBuilder*) clearDescription;
- (BOOL) hasSessionDescription;
- (NSString*) sessionDescription;
- (OWSSignalServiceProtosCallMessageAnswerBuilder*) setSessionDescription:(NSString*) value;
- (OWSSignalServiceProtosCallMessageAnswerBuilder*) clearSessionDescription;
@end
#define IceUpdate_id @"id"

View File

@ -1,4 +1,6 @@
// Generated by the protocol buffer compiler. DO NOT EDIT!
//
// Copyright (c) 2017 Open Whisper Systems. All rights reserved.
//
#import "OWSSignalServiceProtos.pb.h"
// @@protoc_insertion_point(imports)
@ -1180,7 +1182,7 @@ static OWSSignalServiceProtosCallMessage* defaultOWSSignalServiceProtosCallMessa
@interface OWSSignalServiceProtosCallMessageOffer ()
@property UInt64 id;
@property (strong) NSString* pb_description;
@property (strong) NSString* sessionDescription;
@end
@implementation OWSSignalServiceProtosCallMessageOffer
@ -1192,17 +1194,17 @@ static OWSSignalServiceProtosCallMessage* defaultOWSSignalServiceProtosCallMessa
hasId_ = !!_value_;
}
@synthesize id;
- (BOOL) hasDescription {
return !!hasDescription_;
- (BOOL) hasSessionDescription {
return !!hasSessionDescription_;
}
- (void) setHasDescription:(BOOL) _value_ {
hasDescription_ = !!_value_;
- (void) setHasSessionDescription:(BOOL) _value_ {
hasSessionDescription_ = !!_value_;
}
@synthesize pb_description;
@synthesize sessionDescription;
- (instancetype) init {
if ((self = [super init])) {
self.id = 0L;
self.pb_description = @"";
self.sessionDescription = @"";
}
return self;
}
@ -1225,8 +1227,8 @@ static OWSSignalServiceProtosCallMessageOffer* defaultOWSSignalServiceProtosCall
if (self.hasId) {
[output writeUInt64:1 value:self.id];
}
if (self.hasDescription) {
[output writeString:2 value:self.pb_description];
if (self.hasSessionDescription) {
[output writeString:2 value:self.sessionDescription];
}
[self.unknownFields writeToCodedOutputStream:output];
}
@ -1240,8 +1242,8 @@ static OWSSignalServiceProtosCallMessageOffer* defaultOWSSignalServiceProtosCall
if (self.hasId) {
size_ += computeUInt64Size(1, self.id);
}
if (self.hasDescription) {
size_ += computeStringSize(2, self.pb_description);
if (self.hasSessionDescription) {
size_ += computeStringSize(2, self.sessionDescription);
}
size_ += self.unknownFields.serializedSize;
memoizedSerializedSize = size_;
@ -1281,8 +1283,8 @@ static OWSSignalServiceProtosCallMessageOffer* defaultOWSSignalServiceProtosCall
if (self.hasId) {
[output appendFormat:@"%@%@: %@\n", indent, @"id", [NSNumber numberWithLongLong:self.id]];
}
if (self.hasDescription) {
[output appendFormat:@"%@%@: %@\n", indent, @"pb_description", self.pb_description];
if (self.hasSessionDescription) {
[output appendFormat:@"%@%@: %@\n", indent, @"sessionDescription", self.sessionDescription];
}
[self.unknownFields writeDescriptionTo:output withIndent:indent];
}
@ -1290,8 +1292,8 @@ static OWSSignalServiceProtosCallMessageOffer* defaultOWSSignalServiceProtosCall
if (self.hasId) {
[dictionary setObject: [NSNumber numberWithLongLong:self.id] forKey: @"id"];
}
if (self.hasDescription) {
[dictionary setObject: self.pb_description forKey: @"pb_description"];
if (self.hasSessionDescription) {
[dictionary setObject: self.sessionDescription forKey: @"sessionDescription"];
}
[self.unknownFields storeInDictionary:dictionary];
}
@ -1306,8 +1308,8 @@ static OWSSignalServiceProtosCallMessageOffer* defaultOWSSignalServiceProtosCall
return
self.hasId == otherMessage.hasId &&
(!self.hasId || self.id == otherMessage.id) &&
self.hasDescription == otherMessage.hasDescription &&
(!self.hasDescription || [self.pb_description isEqual:otherMessage.pb_description]) &&
self.hasSessionDescription == otherMessage.hasSessionDescription &&
(!self.hasSessionDescription || [self.sessionDescription isEqual:otherMessage.sessionDescription]) &&
(self.unknownFields == otherMessage.unknownFields || (self.unknownFields != nil && [self.unknownFields isEqual:otherMessage.unknownFields]));
}
- (NSUInteger) hash {
@ -1315,8 +1317,8 @@ static OWSSignalServiceProtosCallMessageOffer* defaultOWSSignalServiceProtosCall
if (self.hasId) {
hashCode = hashCode * 31 + [[NSNumber numberWithLongLong:self.id] hash];
}
if (self.hasDescription) {
hashCode = hashCode * 31 + [self.pb_description hash];
if (self.hasSessionDescription) {
hashCode = hashCode * 31 + [self.sessionDescription hash];
}
hashCode = hashCode * 31 + [self.unknownFields hash];
return hashCode;
@ -1364,8 +1366,8 @@ static OWSSignalServiceProtosCallMessageOffer* defaultOWSSignalServiceProtosCall
if (other.hasId) {
[self setId:other.id];
}
if (other.hasDescription) {
[self setDescription:other.pb_description];
if (other.hasSessionDescription) {
[self setSessionDescription:other.sessionDescription];
}
[self mergeUnknownFields:other.unknownFields];
return self;
@ -1393,7 +1395,7 @@ static OWSSignalServiceProtosCallMessageOffer* defaultOWSSignalServiceProtosCall
break;
}
case 18: {
[self setDescription:[input readString]];
[self setSessionDescription:[input readString]];
break;
}
}
@ -1415,27 +1417,27 @@ static OWSSignalServiceProtosCallMessageOffer* defaultOWSSignalServiceProtosCall
resultOffer.id = 0L;
return self;
}
- (BOOL) hasDescription {
return resultOffer.hasDescription;
- (BOOL) hasSessionDescription {
return resultOffer.hasSessionDescription;
}
- (NSString*) pb_description {
return resultOffer.pb_description;
- (NSString*) sessionDescription {
return resultOffer.sessionDescription;
}
- (OWSSignalServiceProtosCallMessageOfferBuilder*) setDescription:(NSString*) value {
resultOffer.hasDescription = YES;
resultOffer.pb_description = value;
- (OWSSignalServiceProtosCallMessageOfferBuilder*) setSessionDescription:(NSString*) value {
resultOffer.hasSessionDescription = YES;
resultOffer.sessionDescription = value;
return self;
}
- (OWSSignalServiceProtosCallMessageOfferBuilder*) clearDescription {
resultOffer.hasDescription = NO;
resultOffer.pb_description = @"";
- (OWSSignalServiceProtosCallMessageOfferBuilder*) clearSessionDescription {
resultOffer.hasSessionDescription = NO;
resultOffer.sessionDescription = @"";
return self;
}
@end
@interface OWSSignalServiceProtosCallMessageAnswer ()
@property UInt64 id;
@property (strong) NSString* pb_description;
@property (strong) NSString* sessionDescription;
@end
@implementation OWSSignalServiceProtosCallMessageAnswer
@ -1447,17 +1449,17 @@ static OWSSignalServiceProtosCallMessageOffer* defaultOWSSignalServiceProtosCall
hasId_ = !!_value_;
}
@synthesize id;
- (BOOL) hasDescription {
return !!hasDescription_;
- (BOOL) hasSessionDescription {
return !!hasSessionDescription_;
}
- (void) setHasDescription:(BOOL) _value_ {
hasDescription_ = !!_value_;
- (void) setHasSessionDescription:(BOOL) _value_ {
hasSessionDescription_ = !!_value_;
}
@synthesize pb_description;
@synthesize sessionDescription;
- (instancetype) init {
if ((self = [super init])) {
self.id = 0L;
self.pb_description = @"";
self.sessionDescription = @"";
}
return self;
}
@ -1480,8 +1482,8 @@ static OWSSignalServiceProtosCallMessageAnswer* defaultOWSSignalServiceProtosCal
if (self.hasId) {
[output writeUInt64:1 value:self.id];
}
if (self.hasDescription) {
[output writeString:2 value:self.pb_description];
if (self.hasSessionDescription) {
[output writeString:2 value:self.sessionDescription];
}
[self.unknownFields writeToCodedOutputStream:output];
}
@ -1495,8 +1497,8 @@ static OWSSignalServiceProtosCallMessageAnswer* defaultOWSSignalServiceProtosCal
if (self.hasId) {
size_ += computeUInt64Size(1, self.id);
}
if (self.hasDescription) {
size_ += computeStringSize(2, self.pb_description);
if (self.hasSessionDescription) {
size_ += computeStringSize(2, self.sessionDescription);
}
size_ += self.unknownFields.serializedSize;
memoizedSerializedSize = size_;
@ -1536,8 +1538,8 @@ static OWSSignalServiceProtosCallMessageAnswer* defaultOWSSignalServiceProtosCal
if (self.hasId) {
[output appendFormat:@"%@%@: %@\n", indent, @"id", [NSNumber numberWithLongLong:self.id]];
}
if (self.hasDescription) {
[output appendFormat:@"%@%@: %@\n", indent, @"pb_description", self.pb_description];
if (self.hasSessionDescription) {
[output appendFormat:@"%@%@: %@\n", indent, @"sessionDescription", self.sessionDescription];
}
[self.unknownFields writeDescriptionTo:output withIndent:indent];
}
@ -1545,8 +1547,8 @@ static OWSSignalServiceProtosCallMessageAnswer* defaultOWSSignalServiceProtosCal
if (self.hasId) {
[dictionary setObject: [NSNumber numberWithLongLong:self.id] forKey: @"id"];
}
if (self.hasDescription) {
[dictionary setObject: self.pb_description forKey: @"pb_description"];
if (self.hasSessionDescription) {
[dictionary setObject: self.sessionDescription forKey: @"sessionDescription"];
}
[self.unknownFields storeInDictionary:dictionary];
}
@ -1561,8 +1563,8 @@ static OWSSignalServiceProtosCallMessageAnswer* defaultOWSSignalServiceProtosCal
return
self.hasId == otherMessage.hasId &&
(!self.hasId || self.id == otherMessage.id) &&
self.hasDescription == otherMessage.hasDescription &&
(!self.hasDescription || [self.pb_description isEqual:otherMessage.pb_description]) &&
self.hasSessionDescription == otherMessage.hasSessionDescription &&
(!self.hasSessionDescription || [self.sessionDescription isEqual:otherMessage.sessionDescription]) &&
(self.unknownFields == otherMessage.unknownFields || (self.unknownFields != nil && [self.unknownFields isEqual:otherMessage.unknownFields]));
}
- (NSUInteger) hash {
@ -1570,8 +1572,8 @@ static OWSSignalServiceProtosCallMessageAnswer* defaultOWSSignalServiceProtosCal
if (self.hasId) {
hashCode = hashCode * 31 + [[NSNumber numberWithLongLong:self.id] hash];
}
if (self.hasDescription) {
hashCode = hashCode * 31 + [self.pb_description hash];
if (self.hasSessionDescription) {
hashCode = hashCode * 31 + [self.sessionDescription hash];
}
hashCode = hashCode * 31 + [self.unknownFields hash];
return hashCode;
@ -1619,8 +1621,8 @@ static OWSSignalServiceProtosCallMessageAnswer* defaultOWSSignalServiceProtosCal
if (other.hasId) {
[self setId:other.id];
}
if (other.hasDescription) {
[self setDescription:other.pb_description];
if (other.hasSessionDescription) {
[self setSessionDescription:other.sessionDescription];
}
[self mergeUnknownFields:other.unknownFields];
return self;
@ -1648,7 +1650,7 @@ static OWSSignalServiceProtosCallMessageAnswer* defaultOWSSignalServiceProtosCal
break;
}
case 18: {
[self setDescription:[input readString]];
[self setSessionDescription:[input readString]];
break;
}
}
@ -1670,20 +1672,20 @@ static OWSSignalServiceProtosCallMessageAnswer* defaultOWSSignalServiceProtosCal
resultAnswer.id = 0L;
return self;
}
- (BOOL) hasDescription {
return resultAnswer.hasDescription;
- (BOOL) hasSessionDescription {
return resultAnswer.hasSessionDescription;
}
- (NSString*) pb_description {
return resultAnswer.pb_description;
- (NSString*) sessionDescription {
return resultAnswer.sessionDescription;
}
- (OWSSignalServiceProtosCallMessageAnswerBuilder*) setDescription:(NSString*) value {
resultAnswer.hasDescription = YES;
resultAnswer.pb_description = value;
- (OWSSignalServiceProtosCallMessageAnswerBuilder*) setSessionDescription:(NSString*) value {
resultAnswer.hasSessionDescription = YES;
resultAnswer.sessionDescription = value;
return self;
}
- (OWSSignalServiceProtosCallMessageAnswerBuilder*) clearDescription {
resultAnswer.hasDescription = NO;
resultAnswer.pb_description = @"";
- (OWSSignalServiceProtosCallMessageAnswerBuilder*) clearSessionDescription {
resultAnswer.hasSessionDescription = NO;
resultAnswer.sessionDescription = @"";
return self;
}
@end

View File

@ -272,15 +272,20 @@ NSString *const OWSMimeTypeUnknownForTests = @"unknown/mimetype";
// Ensure that the filename is a valid filesystem name,
// replacing invalid characters with an underscore.
for (NSCharacterSet *invalidCharacterSet in @[
[NSCharacterSet whitespaceCharacterSet],
[NSCharacterSet newlineCharacterSet],
[NSCharacterSet whitespaceAndNewlineCharacterSet],
[NSCharacterSet illegalCharacterSet],
[NSCharacterSet controlCharacterSet],
[NSCharacterSet characterSetWithCharactersInString:@"<>|\\:()&;?*"],
[NSCharacterSet characterSetWithCharactersInString:@"<>|\\:()&;?*/~"],
]) {
normalizedFilename = [[normalizedFilename componentsSeparatedByCharactersInSet:invalidCharacterSet]
componentsJoinedByString:@"_"];
}
// Remove leading periods to prevent hidden files,
// "." and ".." special file names.
while ([normalizedFilename hasPrefix:@"."]) {
normalizedFilename = [normalizedFilename substringFromIndex:1];
}
NSString *fileExtension = [[normalizedFilename pathExtension]
stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];