OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #import "ios/chrome/common/physical_web/physical_web_request.h" | 5 #import "ios/chrome/common/physical_web/physical_web_request.h" |
6 | 6 |
7 #include "base/ios/weak_nsobject.h" | 7 #include "base/ios/weak_nsobject.h" |
8 #include "base/logging.h" | 8 #include "base/logging.h" |
9 #include "base/mac/foundation_util.h" | 9 #include "base/mac/foundation_util.h" |
10 #include "base/mac/scoped_block.h" | 10 #include "base/mac/scoped_block.h" |
(...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
89 [NSString stringWithUTF8String:google_apis::GetAPIKey().c_str()]; | 89 [NSString stringWithUTF8String:google_apis::GetAPIKey().c_str()]; |
90 [components | 90 [components |
91 setQueryItems:@[ [NSURLQueryItem queryItemWithName:kKeyQueryItemName | 91 setQueryItems:@[ [NSURLQueryItem queryItemWithName:kKeyQueryItemName |
92 value:apiKey] ]]; | 92 value:apiKey] ]]; |
93 NSURL* url = [components URL]; | 93 NSURL* url = [components URL]; |
94 request_.reset([[NSMutableURLRequest requestWithURL:url] retain]); | 94 request_.reset([[NSMutableURLRequest requestWithURL:url] retain]); |
95 [request_ setHTTPMethod:kHTTPPOSTRequestMethod]; | 95 [request_ setHTTPMethod:kHTTPPOSTRequestMethod]; |
96 | 96 |
97 // body of the POST request. | 97 // body of the POST request. |
98 NSDictionary* jsonBody = | 98 NSDictionary* jsonBody = |
99 @{ kUrlsKey : @[ @{kUrlKey : [[device_ url] absoluteString]} ] }; | 99 @{ kUrlsKey : @[ @{kUrlKey : [[device_ requestURL] absoluteString]} ] }; |
100 [request_ setHTTPBody:[NSJSONSerialization dataWithJSONObject:jsonBody | 100 [request_ setHTTPBody:[NSJSONSerialization dataWithJSONObject:jsonBody |
101 options:0 | 101 options:0 |
102 error:NULL]]; | 102 error:NULL]]; |
103 [request_ setValue:@"application/json" forHTTPHeaderField:@"Content-Type"]; | 103 [request_ setValue:@"application/json" forHTTPHeaderField:@"Content-Type"]; |
104 [request_ setValue:base::SysUTF8ToNSString(GetUserAgent()) | 104 [request_ setValue:base::SysUTF8ToNSString(GetUserAgent()) |
105 forHTTPHeaderField:@"User-Agent"]; | 105 forHTTPHeaderField:@"User-Agent"]; |
106 | 106 |
107 // Set the Accept-Language header from the locale language code. This may | 107 // Set the Accept-Language header from the locale language code. This may |
108 // cause us to fetch metadata for the wrong region in languages such as | 108 // cause us to fetch metadata for the wrong region in languages such as |
109 // Chinese that vary significantly between regions. | 109 // Chinese that vary significantly between regions. |
(...skipping 115 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
225 block_.get()(nil, error); | 225 block_.get()(nil, error); |
226 } | 226 } |
227 return; | 227 return; |
228 } | 228 } |
229 | 229 |
230 // Read optional fields. | 230 // Read optional fields. |
231 NSString* iconString = base::mac::ObjCCast<NSString>(pageInfo[kIconKey]); | 231 NSString* iconString = base::mac::ObjCCast<NSString>(pageInfo[kIconKey]); |
232 NSString* description = | 232 NSString* description = |
233 base::mac::ObjCCast<NSString>(pageInfo[kDescriptionKey]); | 233 base::mac::ObjCCast<NSString>(pageInfo[kDescriptionKey]); |
234 NSString* title = base::mac::ObjCCast<NSString>(pageInfo[kTitleKey]); | 234 NSString* title = base::mac::ObjCCast<NSString>(pageInfo[kTitleKey]); |
235 NSURL* scannedUrl = | |
236 scannedUrlString ? [NSURL URLWithString:scannedUrlString] : nil; | |
237 NSURL* resolvedUrl = | 235 NSURL* resolvedUrl = |
238 resolvedUrlString ? [NSURL URLWithString:resolvedUrlString] : nil; | 236 resolvedUrlString ? [NSURL URLWithString:resolvedUrlString] : nil; |
239 NSURL* icon = iconString ? [NSURL URLWithString:iconString] : nil; | 237 NSURL* icon = iconString ? [NSURL URLWithString:iconString] : nil; |
240 base::scoped_nsobject<PhysicalWebDevice> device([[PhysicalWebDevice alloc] | 238 base::scoped_nsobject<PhysicalWebDevice> device([[PhysicalWebDevice alloc] |
241 initWithURL:resolvedUrl | 239 initWithURL:resolvedUrl |
242 requestURL:scannedUrl | 240 requestURL:[device_ requestURL] |
243 icon:icon | 241 icon:icon |
244 title:title | 242 title:title |
245 description:description | 243 description:description |
246 transmitPower:[device_ transmitPower] | 244 transmitPower:[device_ transmitPower] |
247 rssi:[device_ rssi] | 245 rssi:[device_ rssi] |
248 rank:physical_web::kMaxRank]); | 246 rank:physical_web::kMaxRank]); |
249 if (block_.get() != nil) { | 247 if (block_.get() != nil) { |
250 block_.get()(device, nil); | 248 block_.get()(device, nil); |
251 } | 249 } |
252 } | 250 } |
253 } | 251 } |
254 | 252 |
255 @end | 253 @end |
OLD | NEW |