Chromium Code Reviews| Index: chrome/browser/metrics/metrics_service.cc |
| =================================================================== |
| --- chrome/browser/metrics/metrics_service.cc (revision 106929) |
| +++ chrome/browser/metrics/metrics_service.cc (working copy) |
| @@ -179,6 +179,7 @@ |
| #include "content/browser/plugin_service.h" |
| #include "content/browser/renderer_host/render_process_host.h" |
| #include "content/common/child_process_info.h" |
| +#include "content/common/net/url_fetcher.h" |
| #include "content/public/browser/notification_service.h" |
| #include "webkit/plugins/npapi/plugin_list.h" |
| #include "webkit/plugins/webplugininfo.h" |
| @@ -1068,22 +1069,17 @@ |
| } |
| } |
| -void MetricsService::OnURLFetchComplete(const URLFetcher* source, |
| - const GURL& url, |
| - const net::URLRequestStatus& status, |
| - int response_code, |
| - const net::ResponseCookies& cookies, |
| - const std::string& data) { |
| +void MetricsService::OnURLFetchComplete(const URLFetcher* source) { |
| DCHECK(waiting_for_asynchronus_reporting_step_); |
| waiting_for_asynchronus_reporting_step_ = false; |
| DCHECK(current_fetch_.get()); |
| current_fetch_.reset(NULL); // We're not allowed to re-use it. |
|
willchan no longer on Chromium
2011/10/25 18:09:39
Here's the URLFetcher getting deleted. current_fet
|
| // Confirm send so that we can move on. |
| - VLOG(1) << "METRICS RESPONSE CODE: " << response_code |
| - << " status=" << StatusToString(status); |
| + VLOG(1) << "METRICS RESPONSE CODE: " << source->response_code() |
| + << " status=" << StatusToString(source->status()); |
| - bool upload_succeeded = response_code == 200; |
| + bool upload_succeeded = source->response_code() == 200; |
| // Provide boolean for error recovery (allow us to ignore response_code). |
| bool discard_log = false; |
| @@ -1095,7 +1091,7 @@ |
| "UMA.Large Rejected Log was Discarded", |
| static_cast<int>(log_manager_.staged_log_text().length())); |
| discard_log = true; |
| - } else if (response_code == 400) { |
| + } else if (source->response_code() == 400) { |
| // Bad syntax. Retransmission won't work. |
| UMA_HISTOGRAM_COUNTS("UMA.Unacceptable_Log_Discarded", state_); |
| discard_log = true; |
| @@ -1103,9 +1099,11 @@ |
| if (!upload_succeeded && !discard_log) { |
| VLOG(1) << "METRICS: transmission attempt returned a failure code: " |
| - << response_code << ". Verify network connectivity"; |
| + << source->response_code() << ". Verify network connectivity"; |
| LogBadResponseCode(); |
| } else { // Successful receipt (or we are discarding log). |
| + std::string data; |
| + source->GetResponseAsString(&data); |
| VLOG(1) << "METRICS RESPONSE DATA: " << data; |
| switch (state_) { |
| case INITIAL_LOG_READY: |
| @@ -1138,7 +1136,7 @@ |
| // Error 400 indicates a problem with the log, not with the server, so |
| // don't consider that a sign that the server is in trouble. |
| - bool server_is_healthy = upload_succeeded || response_code == 400; |
| + bool server_is_healthy = upload_succeeded || source->response_code() == 400; |
| scheduler_->UploadFinished(server_is_healthy, |
| log_manager_.has_unsent_logs()); |