OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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/rappor/log_uploader.h" | 5 #include "components/rappor/log_uploader.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
8 #include <stdint.h> | 8 #include <stdint.h> |
| 9 #include <utility> |
9 | 10 |
10 #include "base/metrics/histogram_macros.h" | 11 #include "base/metrics/histogram_macros.h" |
11 #include "base/metrics/sparse_histogram.h" | 12 #include "base/metrics/sparse_histogram.h" |
12 #include "components/data_use_measurement/core/data_use_user_data.h" | 13 #include "components/data_use_measurement/core/data_use_user_data.h" |
13 #include "net/base/load_flags.h" | 14 #include "net/base/load_flags.h" |
14 #include "net/base/net_errors.h" | 15 #include "net/base/net_errors.h" |
15 #include "net/url_request/url_fetcher.h" | 16 #include "net/url_request/url_fetcher.h" |
16 | 17 |
17 namespace { | 18 namespace { |
18 | 19 |
(...skipping 116 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
135 base::TimeDelta max_interval = | 136 base::TimeDelta max_interval = |
136 base::TimeDelta::FromSeconds(kMaxBackoffIntervalSeconds); | 137 base::TimeDelta::FromSeconds(kMaxBackoffIntervalSeconds); |
137 return interval > max_interval ? max_interval : interval; | 138 return interval > max_interval ? max_interval : interval; |
138 } | 139 } |
139 | 140 |
140 void LogUploader::OnURLFetchComplete(const net::URLFetcher* source) { | 141 void LogUploader::OnURLFetchComplete(const net::URLFetcher* source) { |
141 // We're not allowed to re-use the existing |URLFetcher|s, so free them here. | 142 // We're not allowed to re-use the existing |URLFetcher|s, so free them here. |
142 // Note however that |source| is aliased to the fetcher, so we should be | 143 // Note however that |source| is aliased to the fetcher, so we should be |
143 // careful not to delete it too early. | 144 // careful not to delete it too early. |
144 DCHECK_EQ(current_fetch_.get(), source); | 145 DCHECK_EQ(current_fetch_.get(), source); |
145 scoped_ptr<net::URLFetcher> fetch(current_fetch_.Pass()); | 146 scoped_ptr<net::URLFetcher> fetch(std::move(current_fetch_)); |
146 | 147 |
147 const net::URLRequestStatus& request_status = source->GetStatus(); | 148 const net::URLRequestStatus& request_status = source->GetStatus(); |
148 | 149 |
149 const int response_code = source->GetResponseCode(); | 150 const int response_code = source->GetResponseCode(); |
150 DVLOG(2) << "Upload fetch complete response code: " << response_code; | 151 DVLOG(2) << "Upload fetch complete response code: " << response_code; |
151 | 152 |
152 if (request_status.status() != net::URLRequestStatus::SUCCESS) { | 153 if (request_status.status() != net::URLRequestStatus::SUCCESS) { |
153 UMA_HISTOGRAM_SPARSE_SLOWLY("Rappor.FailedUploadErrorCode", | 154 UMA_HISTOGRAM_SPARSE_SLOWLY("Rappor.FailedUploadErrorCode", |
154 -request_status.error()); | 155 -request_status.error()); |
155 DVLOG(1) << "Rappor server upload failed with error: " | 156 DVLOG(1) << "Rappor server upload failed with error: " |
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
192 if (!server_is_healthy) | 193 if (!server_is_healthy) |
193 upload_interval_ = BackOffUploadInterval(upload_interval_); | 194 upload_interval_ = BackOffUploadInterval(upload_interval_); |
194 else | 195 else |
195 upload_interval_ = base::TimeDelta::FromSeconds(kUnsentLogsIntervalSeconds); | 196 upload_interval_ = base::TimeDelta::FromSeconds(kUnsentLogsIntervalSeconds); |
196 | 197 |
197 if (CanStartUpload()) | 198 if (CanStartUpload()) |
198 ScheduleNextUpload(upload_interval_); | 199 ScheduleNextUpload(upload_interval_); |
199 } | 200 } |
200 | 201 |
201 } // namespace rappor | 202 } // namespace rappor |
OLD | NEW |