|
|
|
@ -102,10 +102,10 @@ NSString *const kNSNotification_SocketManagerStateDidChange = @"kNSNotification_
|
|
|
|
|
NSError *error = OWSErrorWithCodeDescription(OWSErrorCodeMessageRequestFailed,
|
|
|
|
|
NSLocalizedString(@"ERROR_DESCRIPTION_REQUEST_FAILED", @"Error indicating that a socket request failed."));
|
|
|
|
|
|
|
|
|
|
[self didFailWithStatusCode:0 responseBody:nil error:error];
|
|
|
|
|
[self didFailWithStatusCode:0 responseData:nil error:error];
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
- (void)didFailWithStatusCode:(NSInteger)statusCode responseBody:(nullable NSData *)responseBody error:(NSError *)error
|
|
|
|
|
- (void)didFailWithStatusCode:(NSInteger)statusCode responseData:(nullable NSData *)responseData error:(NSError *)error
|
|
|
|
|
{
|
|
|
|
|
OWSAssert(error);
|
|
|
|
|
|
|
|
|
@ -124,7 +124,7 @@ NSString *const kNSNotification_SocketManagerStateDidChange = @"kNSNotification_
|
|
|
|
|
|
|
|
|
|
TSSocketMessageFailure failure = self.failure;
|
|
|
|
|
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
|
|
|
|
|
failure(statusCode, responseBody, error);
|
|
|
|
|
failure(statusCode, responseData, error);
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
self.success = nil;
|
|
|
|
@ -570,18 +570,18 @@ NSString *const kNSNotification_SocketManagerStateDidChange = @"kNSNotification_
|
|
|
|
|
if (message.hasMessage) {
|
|
|
|
|
responseMessage = message.message;
|
|
|
|
|
}
|
|
|
|
|
NSData *_Nullable responseBody;
|
|
|
|
|
NSData *_Nullable responseData;
|
|
|
|
|
if (message.hasBody) {
|
|
|
|
|
responseBody = message.body;
|
|
|
|
|
responseData = message.body;
|
|
|
|
|
}
|
|
|
|
|
NSArray<NSString *> *_Nullable responseHeaders = message.headers;
|
|
|
|
|
|
|
|
|
|
BOOL hasValidResponse = YES;
|
|
|
|
|
id responseObject = responseBody;
|
|
|
|
|
if (responseBody) {
|
|
|
|
|
id responseObject = responseData;
|
|
|
|
|
if (responseData) {
|
|
|
|
|
NSError *error;
|
|
|
|
|
id _Nullable responseJson =
|
|
|
|
|
[NSJSONSerialization JSONObjectWithData:responseBody options:(NSJSONReadingOptions)0 error:&error];
|
|
|
|
|
[NSJSONSerialization JSONObjectWithData:responseData options:(NSJSONReadingOptions)0 error:&error];
|
|
|
|
|
if (!responseJson || error) {
|
|
|
|
|
OWSProdLogAndFail(@"%@ could not parse WebSocket response JSON: %@.", self.logTag, error);
|
|
|
|
|
hasValidResponse = NO;
|
|
|
|
@ -608,7 +608,7 @@ NSString *const kNSNotification_SocketManagerStateDidChange = @"kNSNotification_
|
|
|
|
|
NSError *error = OWSErrorWithCodeDescription(OWSErrorCodeMessageResponseFailed,
|
|
|
|
|
NSLocalizedString(
|
|
|
|
|
@"ERROR_DESCRIPTION_RESPONSE_FAILED", @"Error indicating that a socket response failed."));
|
|
|
|
|
[socketMessage didFailWithStatusCode:(NSInteger)responseStatus responseBody:responseBody error:error];
|
|
|
|
|
[socketMessage didFailWithStatusCode:(NSInteger)responseStatus responseData:responseData error:error];
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -617,7 +617,7 @@ NSString *const kNSNotification_SocketManagerStateDidChange = @"kNSNotification_
|
|
|
|
|
(unsigned long long)requestId,
|
|
|
|
|
(NSInteger)responseStatus,
|
|
|
|
|
responseMessage,
|
|
|
|
|
responseBody.length,
|
|
|
|
|
responseData.length,
|
|
|
|
|
responseHeaders,
|
|
|
|
|
socketMessage != nil,
|
|
|
|
|
responseObject);
|
|
|
|
|