Fix deprecated methods in AppRTCMobile.
Remove warning suppressions and update code that uses deprecated methods
to the currently supported APIs.
BUG=webrtc:5549
Review-Url: https://codereview.webrtc.org/2780433006
Cr-Commit-Position: refs/heads/master@{#17472}
diff --git a/webrtc/examples/objc/AppRTCMobile/ARDAppEngineClient.m b/webrtc/examples/objc/AppRTCMobile/ARDAppEngineClient.m
index d707b92..ad7a6c2 100644
--- a/webrtc/examples/objc/AppRTCMobile/ARDAppEngineClient.m
+++ b/webrtc/examples/objc/AppRTCMobile/ARDAppEngineClient.m
@@ -57,29 +57,26 @@
request.HTTPMethod = @"POST";
__weak ARDAppEngineClient *weakSelf = self;
[NSURLConnection sendAsyncRequest:request
- completionHandler:^(NSURLResponse *response,
- NSData *data,
- NSError *error) {
- ARDAppEngineClient *strongSelf = weakSelf;
- if (error) {
- if (completionHandler) {
- completionHandler(nil, error);
- }
- return;
- }
- ARDJoinResponse *joinResponse =
- [ARDJoinResponse responseFromJSONData:data];
- if (!joinResponse) {
- if (completionHandler) {
- NSError *error = [[self class] badResponseError];
- completionHandler(nil, error);
- }
- return;
- }
- if (completionHandler) {
- completionHandler(joinResponse, nil);
- }
- }];
+ completionHandler:^(NSURLResponse *response, NSData *data, NSError *error) {
+ ARDAppEngineClient *strongSelf = weakSelf;
+ if (error) {
+ if (completionHandler) {
+ completionHandler(nil, error);
+ }
+ return;
+ }
+ ARDJoinResponse *joinResponse = [ARDJoinResponse responseFromJSONData:data];
+ if (!joinResponse) {
+ if (completionHandler) {
+ NSError *error = [[self class] badResponseError];
+ completionHandler(nil, error);
+ }
+ return;
+ }
+ if (completionHandler) {
+ completionHandler(joinResponse, nil);
+ }
+ }];
}
- (void)sendMessage:(ARDSignalingMessage *)message
@@ -138,17 +135,24 @@
NSURL *url = [NSURL URLWithString:urlString];
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url];
request.HTTPMethod = @"POST";
- NSURLResponse *response = nil;
- NSError *error = nil;
+
+ RTCLog(@"C->RS: BYE");
+ __block NSError *error = nil;
+
// We want a synchronous request so that we know that we've left the room on
// room server before we do any further work.
- RTCLog(@"C->RS: BYE");
- [NSURLConnection sendSynchronousRequest:request
- returningResponse:&response
- error:&error];
+ dispatch_semaphore_t sem = dispatch_semaphore_create(0);
+ [NSURLConnection sendAsyncRequest:request
+ completionHandler:^(NSURLResponse *response, NSData *data, NSError *e) {
+ if (e) {
+ error = e;
+ }
+ dispatch_semaphore_signal(sem);
+ }];
+
+ dispatch_semaphore_wait(sem, DISPATCH_TIME_FOREVER);
if (error) {
- RTCLogError(@"Error leaving room %@ on room server: %@",
- roomId, error.localizedDescription);
+ RTCLogError(@"Error leaving room %@ on room server: %@", roomId, error.localizedDescription);
if (completionHandler) {
completionHandler(error);
}