
Significant changes: - move the libjingle_examples.gyp file into webrtc directory. - rename talk/examples/android to webrtc/examples/androidapp to avoid name conflicts. - update paths in talk/libjingle_tests.gyp to point to webrtc directory for Objective-C test. BUG= R=pthatcher@webrtc.org, tkchin@webrtc.org Review URL: https://codereview.webrtc.org/1235563006 . Cr-Commit-Position: refs/heads/master@{#9681}
51 lines
1.7 KiB
Objective-C
51 lines
1.7 KiB
Objective-C
/*
|
|
* Copyright 2014 The WebRTC Project Authors. All rights reserved.
|
|
*
|
|
* Use of this source code is governed by a BSD-style license
|
|
* that can be found in the LICENSE file in the root of the source
|
|
* tree. An additional intellectual property rights grant can be found
|
|
* in the file PATENTS. All contributing project authors may
|
|
* be found in the AUTHORS file in the root of the source tree.
|
|
*/
|
|
|
|
#import "RTCICECandidate+JSON.h"
|
|
|
|
#import "RTCLogging.h"
|
|
|
|
static NSString const *kRTCICECandidateTypeKey = @"type";
|
|
static NSString const *kRTCICECandidateTypeValue = @"candidate";
|
|
static NSString const *kRTCICECandidateMidKey = @"id";
|
|
static NSString const *kRTCICECandidateMLineIndexKey = @"label";
|
|
static NSString const *kRTCICECandidateSdpKey = @"candidate";
|
|
|
|
@implementation RTCICECandidate (JSON)
|
|
|
|
+ (RTCICECandidate *)candidateFromJSONDictionary:(NSDictionary *)dictionary {
|
|
NSString *mid = dictionary[kRTCICECandidateMidKey];
|
|
NSString *sdp = dictionary[kRTCICECandidateSdpKey];
|
|
NSNumber *num = dictionary[kRTCICECandidateMLineIndexKey];
|
|
NSInteger mLineIndex = [num integerValue];
|
|
return [[RTCICECandidate alloc] initWithMid:mid index:mLineIndex sdp:sdp];
|
|
}
|
|
|
|
- (NSData *)JSONData {
|
|
NSDictionary *json = @{
|
|
kRTCICECandidateTypeKey : kRTCICECandidateTypeValue,
|
|
kRTCICECandidateMLineIndexKey : @(self.sdpMLineIndex),
|
|
kRTCICECandidateMidKey : self.sdpMid,
|
|
kRTCICECandidateSdpKey : self.sdp
|
|
};
|
|
NSError *error = nil;
|
|
NSData *data =
|
|
[NSJSONSerialization dataWithJSONObject:json
|
|
options:NSJSONWritingPrettyPrinted
|
|
error:&error];
|
|
if (error) {
|
|
RTCLogError(@"Error serializing JSON: %@", error);
|
|
return nil;
|
|
}
|
|
return data;
|
|
}
|
|
|
|
@end
|