Code generate Swift wrappers for protocol buffers.

pull/1/head
Matthew Chen 6 years ago
parent ff8565dbd5
commit 950cab7eb9

@ -58,12 +58,30 @@ NS_ASSUME_NONNULL_BEGIN
{
OWSAssert(recipient);
SSKProtoReceiptMessage *_Nullable receiptMessage = [self buildReceiptMessage:recipient.recipientId];
if (!receiptMessage) {
OWSFail(@"%@ could not build protobuf.", self.logTag);
return nil;
}
SSKProtoContentBuilder *contentBuilder = [SSKProtoContentBuilder new];
[contentBuilder setReceiptMessage:[self buildReceiptMessage:recipient.recipientId]];
return [[contentBuilder build] data];
[contentBuilder setReceiptMessage:receiptMessage];
NSError *error;
SSKProtoContent *_Nullable contentProto = [contentBuilder buildAndReturnError:&error];
if (error || !contentProto) {
OWSFail(@"%@ could not build protobuf: %@", self.logTag, error);
return nil;
}
NSData *_Nullable contentData = [contentProto serializedDataAndReturnError:&error];
if (error || !contentData) {
OWSFail(@"%@ could not serialize protobuf: %@", self.logTag, error);
return nil;
}
return contentData;
}
- (SSKProtoReceiptMessage *)buildReceiptMessage:(NSString *)recipientId
- (nullable SSKProtoReceiptMessage *)buildReceiptMessage:(NSString *)recipientId
{
SSKProtoReceiptMessageBuilder *builder = [SSKProtoReceiptMessageBuilder new];
@ -73,7 +91,13 @@ NS_ASSUME_NONNULL_BEGIN
[builder addTimestamp:[messageTimestamp unsignedLongLongValue]];
}
return [builder build];
NSError *error;
SSKProtoReceiptMessage *_Nullable receiptMessage = [builder buildAndReturnError:&error];
if (error || !receiptMessage) {
OWSFail(@"%@ could not build protobuf: %@", self.logTag, error);
return nil;
}
return receiptMessage;
}
#pragma mark - TSYapDatabaseObject overrides

@ -61,7 +61,7 @@ NS_ASSUME_NONNULL_BEGIN
SSKProtoDataMessage *_Nullable dataMessage = [self.message buildDataMessage:self.sentRecipientId];
if (!dataMessage) {
OWSFail(@"%@ could not build protobuf: %@", self.logTag, error);
OWSFail(@"%@ could not build protobuf.", self.logTag);
return nil;
}
[sentBuilder setMessage:dataMessage];

@ -917,7 +917,15 @@ NSString *NSStringForOutgoingMessageRecipientState(OWSOutgoingMessageRecipientSt
[TSAttachmentStream buildProtoForAttachmentId:attachment.thumbnailAttachmentStreamId];
}
[quoteBuilder addAttachments:[quotedAttachmentBuilder build]];
NSError *error;
SSKProtoDataMessageQuoteQuotedAttachment *_Nullable quotedAttachmentMessage =
[quotedAttachmentBuilder buildAndReturnError:&error];
if (!quotedAttachmentMessage) {
OWSFail(@"%@ could not build protobuf: %@", self.logTag, error);
return nil;
}
[quoteBuilder addAttachments:quotedAttachmentMessage];
}
}
@ -948,7 +956,7 @@ NSString *NSStringForOutgoingMessageRecipientState(OWSOutgoingMessageRecipientSt
- (nullable NSData *)buildPlainTextData:(SignalRecipient *)recipient
{
NSError *error;
SSKProtoDataMessage *_Nullable dataMessage = [self buildDataMessage:self.recipientId];
SSKProtoDataMessage *_Nullable dataMessage = [self buildDataMessage:recipient.recipientId];
if (!dataMessage) {
OWSFail(@"%@ could not build protobuf: %@", self.logTag, error);
return nil;
@ -959,12 +967,12 @@ NSString *NSStringForOutgoingMessageRecipientState(OWSOutgoingMessageRecipientSt
SSKProtoContent *_Nullable contentProto = [contentBuilder buildAndReturnError:&error];
if (error || !contentProto) {
OWSFail(@"%@ could not build protobuf: %@", self.logTag, error);
return;
return nil;
}
NSData *_Nullable contentData = [contentProto serializedDataAndReturnError:&error];
if (error || !contentData) {
OWSFail(@"%@ could not serialize protobuf: %@", self.logTag, error);
return;
return nil;
}
return contentData;
}

@ -47,7 +47,6 @@ NS_ASSUME_NONNULL_BEGIN
- (nullable NSData *)buildPlainTextData:(SignalRecipient *)recipient
{
SSKProtoContentBuilder *contentBuilder = [SSKProtoContentBuilder new];
SSKProtoNullMessageBuilder *nullMessageBuilder = [SSKProtoNullMessageBuilder new];
NSUInteger contentLength = self.verificationStateSyncMessage.unpaddedVerifiedLength;
@ -64,10 +63,28 @@ NS_ASSUME_NONNULL_BEGIN
OWSAssert(contentLength > 0);
nullMessageBuilder.padding = [Cryptography generateRandomBytes:contentLength];
contentBuilder.nullMessage = [nullMessageBuilder build];
return [contentBuilder build].data;
NSError *error;
SSKProtoNullMessage *_Nullable nullMessage = [nullMessageBuilder buildAndReturnError:&error];
if (error || !nullMessage) {
OWSFail(@"%@ could not build protobuf: %@", self.logTag, error);
return nil;
}
SSKProtoContentBuilder *contentBuilder = [SSKProtoContentBuilder new];
contentBuilder.nullMessage = nullMessage;
SSKProtoContent *_Nullable contentProto = [contentBuilder buildAndReturnError:&error];
if (error || !contentProto) {
OWSFail(@"%@ could not build protobuf: %@", self.logTag, error);
return nil;
}
NSData *_Nullable contentData = [contentProto serializedDataAndReturnError:&error];
if (error || !contentData) {
OWSFail(@"%@ could not serialize protobuf: %@", self.logTag, error);
return nil;
}
return contentData;
}
- (BOOL)shouldSyncTranscript

@ -2,6 +2,7 @@
// Copyright (c) 2018 Open Whisper Systems. All rights reserved.
//
//#import <SignalServiceKit/SignalServiceKit-Swift.h>
#import "SignalServiceKit-Swift.h"
#import "TSYapDatabaseObject.h"

Loading…
Cancel
Save