Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(48)

Side by Side Diff: components/image_fetcher/core/image_data_fetcher.cc

Issue 2794343002: Network traffic annotation added to image_data_fetcher. (Closed)
Patch Set: Annotation moved to callers. Created 3 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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/image_fetcher/core/image_data_fetcher.h" 5 #include "components/image_fetcher/core/image_data_fetcher.h"
6 6
7 #include <utility> 7 #include <utility>
8 8
9 #include "net/base/load_flags.h" 9 #include "net/base/load_flags.h"
10 #include "net/http/http_response_headers.h" 10 #include "net/http/http_response_headers.h"
(...skipping 23 matching lines...) Expand all
34 ~ImageDataFetcherRequest() {} 34 ~ImageDataFetcherRequest() {}
35 35
36 // The callback to run after the image data was fetched. The callback will 36 // The callback to run after the image data was fetched. The callback will
37 // be run even if the image data could not be fetched successfully. 37 // be run even if the image data could not be fetched successfully.
38 ImageDataFetcherCallback callback; 38 ImageDataFetcherCallback callback;
39 39
40 std::unique_ptr<net::URLFetcher> url_fetcher; 40 std::unique_ptr<net::URLFetcher> url_fetcher;
41 }; 41 };
42 42
43 ImageDataFetcher::ImageDataFetcher( 43 ImageDataFetcher::ImageDataFetcher(
44 net::URLRequestContextGetter* url_request_context_getter) 44 net::URLRequestContextGetter* url_request_context_getter,
45 const net::NetworkTrafficAnnotationTag& traffic_annotation)
45 : url_request_context_getter_(url_request_context_getter), 46 : url_request_context_getter_(url_request_context_getter),
46 data_use_service_name_(DataUseUserData::IMAGE_FETCHER_UNTAGGED), 47 data_use_service_name_(DataUseUserData::IMAGE_FETCHER_UNTAGGED),
47 next_url_fetcher_id_(0) {} 48 next_url_fetcher_id_(0),
49 traffic_annotation_(traffic_annotation) {}
48 50
49 ImageDataFetcher::~ImageDataFetcher() {} 51 ImageDataFetcher::~ImageDataFetcher() {}
50 52
51 void ImageDataFetcher::SetDataUseServiceName( 53 void ImageDataFetcher::SetDataUseServiceName(
52 DataUseServiceName data_use_service_name) { 54 DataUseServiceName data_use_service_name) {
53 data_use_service_name_ = data_use_service_name; 55 data_use_service_name_ = data_use_service_name;
54 } 56 }
55 57
56 void ImageDataFetcher::SetImageDownloadLimit( 58 void ImageDataFetcher::SetImageDownloadLimit(
57 base::Optional<int64_t> max_download_bytes) { 59 base::Optional<int64_t> max_download_bytes) {
58 max_download_bytes_ = max_download_bytes; 60 max_download_bytes_ = max_download_bytes;
59 } 61 }
60 62
61 void ImageDataFetcher::FetchImageData( 63 void ImageDataFetcher::FetchImageData(
62 const GURL& image_url, 64 const GURL& image_url,
63 const ImageDataFetcherCallback& callback) { 65 const ImageDataFetcherCallback& callback) {
64 FetchImageData( 66 FetchImageData(
65 image_url, callback, /*referrer=*/std::string(), 67 image_url, callback, /*referrer=*/std::string(),
66 net::URLRequest::CLEAR_REFERRER_ON_TRANSITION_FROM_SECURE_TO_INSECURE); 68 net::URLRequest::CLEAR_REFERRER_ON_TRANSITION_FROM_SECURE_TO_INSECURE);
67 } 69 }
68 70
69 void ImageDataFetcher::FetchImageData( 71 void ImageDataFetcher::FetchImageData(
70 const GURL& image_url, 72 const GURL& image_url,
71 const ImageDataFetcherCallback& callback, 73 const ImageDataFetcherCallback& callback,
72 const std::string& referrer, 74 const std::string& referrer,
73 net::URLRequest::ReferrerPolicy referrer_policy) { 75 net::URLRequest::ReferrerPolicy referrer_policy) {
74 std::unique_ptr<net::URLFetcher> url_fetcher = net::URLFetcher::Create( 76 std::unique_ptr<net::URLFetcher> url_fetcher =
75 next_url_fetcher_id_++, image_url, net::URLFetcher::GET, this); 77 net::URLFetcher::Create(next_url_fetcher_id_++, image_url,
78 net::URLFetcher::GET, this, traffic_annotation_);
76 79
77 DataUseUserData::AttachToFetcher(url_fetcher.get(), data_use_service_name_); 80 DataUseUserData::AttachToFetcher(url_fetcher.get(), data_use_service_name_);
78 81
79 std::unique_ptr<ImageDataFetcherRequest> request( 82 std::unique_ptr<ImageDataFetcherRequest> request(
80 new ImageDataFetcherRequest(callback, std::move(url_fetcher))); 83 new ImageDataFetcherRequest(callback, std::move(url_fetcher)));
81 request->url_fetcher->SetRequestContext(url_request_context_getter_.get()); 84 request->url_fetcher->SetRequestContext(url_request_context_getter_.get());
82 request->url_fetcher->SetReferrer(referrer); 85 request->url_fetcher->SetReferrer(referrer);
83 request->url_fetcher->SetReferrerPolicy(referrer_policy); 86 request->url_fetcher->SetReferrerPolicy(referrer_policy);
84 request->url_fetcher->SetLoadFlags(net::LOAD_DO_NOT_SEND_COOKIES | 87 request->url_fetcher->SetLoadFlags(net::LOAD_DO_NOT_SEND_COOKIES |
85 net::LOAD_DO_NOT_SAVE_COOKIES | 88 net::LOAD_DO_NOT_SAVE_COOKIES |
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after
135 void ImageDataFetcher::FinishRequest(const net::URLFetcher* source, 138 void ImageDataFetcher::FinishRequest(const net::URLFetcher* source,
136 const RequestMetadata& metadata, 139 const RequestMetadata& metadata,
137 const std::string& image_data) { 140 const std::string& image_data) {
138 auto request_iter = pending_requests_.find(source); 141 auto request_iter = pending_requests_.find(source);
139 DCHECK(request_iter != pending_requests_.end()); 142 DCHECK(request_iter != pending_requests_.end());
140 request_iter->second->callback.Run(image_data, metadata); 143 request_iter->second->callback.Run(image_data, metadata);
141 pending_requests_.erase(request_iter); 144 pending_requests_.erase(request_iter);
142 } 145 }
143 146
144 } // namespace image_fetcher 147 } // namespace image_fetcher
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698