OLD | NEW |
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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 #include "components/data_use_measurement/content/content_url_request_classifier
.h" | 5 #include "components/data_use_measurement/content/content_url_request_classifier
.h" |
6 | 6 |
7 #include <string> | 7 #include <string> |
8 | 8 |
9 #include "base/strings/string_util.h" | 9 #include "base/strings/string_util.h" |
10 #include "content/public/browser/resource_request_info.h" | 10 #include "content/public/browser/resource_request_info.h" |
(...skipping 13 matching lines...) Expand all Loading... |
24 // TODO(rajendrant): Verify this condition for different use cases. See | 24 // TODO(rajendrant): Verify this condition for different use cases. See |
25 // crbug.com/626063. | 25 // crbug.com/626063. |
26 return content::ResourceRequestInfo::ForRequest(&request) != nullptr; | 26 return content::ResourceRequestInfo::ForRequest(&request) != nullptr; |
27 } | 27 } |
28 | 28 |
29 bool ContentURLRequestClassifier::IsUserRequest( | 29 bool ContentURLRequestClassifier::IsUserRequest( |
30 const net::URLRequest& request) const { | 30 const net::URLRequest& request) const { |
31 return data_use_measurement::IsUserRequest(request); | 31 return data_use_measurement::IsUserRequest(request); |
32 } | 32 } |
33 | 33 |
| 34 bool ContentURLRequestClassifier::IsServiceWorkerRequest( |
| 35 const net::URLRequest& request) const { |
| 36 return content::ResourceRequestInfo::OriginatedFromServiceWorker(&request); |
| 37 } |
| 38 |
34 DataUseUserData::DataUseContentType ContentURLRequestClassifier::GetContentType( | 39 DataUseUserData::DataUseContentType ContentURLRequestClassifier::GetContentType( |
35 const net::URLRequest& request, | 40 const net::URLRequest& request, |
36 const net::HttpResponseHeaders& response_headers) const { | 41 const net::HttpResponseHeaders& response_headers) const { |
37 const content::ResourceRequestInfo* request_info = | 42 const content::ResourceRequestInfo* request_info = |
38 content::ResourceRequestInfo::ForRequest(&request); | 43 content::ResourceRequestInfo::ForRequest(&request); |
39 std::string mime_type; | 44 std::string mime_type; |
40 if (response_headers.GetMimeType(&mime_type)) { | 45 if (response_headers.GetMimeType(&mime_type)) { |
41 if (mime_type == "text/html" && request_info && | 46 if (mime_type == "text/html" && request_info && |
42 request_info->GetResourceType() == | 47 request_info->GetResourceType() == |
43 content::ResourceType::RESOURCE_TYPE_MAIN_FRAME) { | 48 content::ResourceType::RESOURCE_TYPE_MAIN_FRAME) { |
(...skipping 17 matching lines...) Expand all Loading... |
61 return DataUseUserData::AUDIO; | 66 return DataUseUserData::AUDIO; |
62 } else if (base::StartsWith(mime_type, "video/", | 67 } else if (base::StartsWith(mime_type, "video/", |
63 base::CompareCase::SENSITIVE)) { | 68 base::CompareCase::SENSITIVE)) { |
64 return DataUseUserData::VIDEO; | 69 return DataUseUserData::VIDEO; |
65 } | 70 } |
66 } | 71 } |
67 return DataUseUserData::OTHER; | 72 return DataUseUserData::OTHER; |
68 } | 73 } |
69 | 74 |
70 } // namespace data_use_measurement | 75 } // namespace data_use_measurement |
OLD | NEW |