| 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/cronet/android/cronet_url_request_adapter.h" | 5 #include "components/cronet/android/cronet_url_request_adapter.h" |
| 6 | 6 |
| 7 #include <limits> | 7 #include <limits> |
| 8 #include <utility> | 8 #include <utility> |
| 9 #include <vector> | 9 #include <vector> |
| 10 | 10 |
| (...skipping 384 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 395 << " on chromium request: " << initial_url_.possibly_invalid_spec(); | 395 << " on chromium request: " << initial_url_.possibly_invalid_spec(); |
| 396 JNIEnv* env = base::android::AttachCurrentThread(); | 396 JNIEnv* env = base::android::AttachCurrentThread(); |
| 397 cronet::Java_CronetUrlRequest_onError( | 397 cronet::Java_CronetUrlRequest_onError( |
| 398 env, owner_.obj(), NetErrorToUrlRequestError(net_error), net_error, | 398 env, owner_.obj(), NetErrorToUrlRequestError(net_error), net_error, |
| 399 net_error_details.quic_connection_error, | 399 net_error_details.quic_connection_error, |
| 400 ConvertUTF8ToJavaString(env, net::ErrorToString(net_error)).obj(), | 400 ConvertUTF8ToJavaString(env, net::ErrorToString(net_error)).obj(), |
| 401 request->GetTotalReceivedBytes()); | 401 request->GetTotalReceivedBytes()); |
| 402 } | 402 } |
| 403 | 403 |
| 404 void CronetURLRequestAdapter::MaybeReportMetrics(JNIEnv* env) const { | 404 void CronetURLRequestAdapter::MaybeReportMetrics(JNIEnv* env) const { |
| 405 if (!enable_metrics_) { | 405 // If there was an exception while starting the CronetUrlRequest, there won't |
| 406 // be a native URLRequest. In this case, the caller gets the exception |
| 407 // immediately, and the onFailed callback isn't called, so don't report |
| 408 // metrics either. |
| 409 if (!enable_metrics_ || !url_request_) { |
| 406 return; | 410 return; |
| 407 } | 411 } |
| 408 net::LoadTimingInfo metrics; | 412 net::LoadTimingInfo metrics; |
| 409 url_request_->GetLoadTimingInfo(&metrics); | 413 url_request_->GetLoadTimingInfo(&metrics); |
| 410 base::Time start_time = metrics.request_start_time; | 414 base::Time start_time = metrics.request_start_time; |
| 411 base::TimeTicks start_ticks = metrics.request_start; | 415 base::TimeTicks start_ticks = metrics.request_start; |
| 412 Java_CronetUrlRequest_onMetricsCollected( | 416 Java_CronetUrlRequest_onMetricsCollected( |
| 413 env, owner_.obj(), | 417 env, owner_.obj(), |
| 414 metrics_util::ConvertTime(start_ticks, start_ticks, start_time), | 418 metrics_util::ConvertTime(start_ticks, start_ticks, start_time), |
| 415 metrics_util::ConvertTime(metrics.connect_timing.dns_start, start_ticks, | 419 metrics_util::ConvertTime(metrics.connect_timing.dns_start, start_ticks, |
| (...skipping 14 matching lines...) Expand all Loading... |
| 430 metrics_util::ConvertTime(metrics.push_end, start_ticks, start_time), | 434 metrics_util::ConvertTime(metrics.push_end, start_ticks, start_time), |
| 431 metrics_util::ConvertTime(metrics.receive_headers_end, start_ticks, | 435 metrics_util::ConvertTime(metrics.receive_headers_end, start_ticks, |
| 432 start_time), | 436 start_time), |
| 433 metrics_util::ConvertTime(base::TimeTicks::Now(), start_ticks, | 437 metrics_util::ConvertTime(base::TimeTicks::Now(), start_ticks, |
| 434 start_time), | 438 start_time), |
| 435 metrics.socket_reused, url_request_->GetTotalSentBytes(), | 439 metrics.socket_reused, url_request_->GetTotalSentBytes(), |
| 436 url_request_->GetTotalReceivedBytes()); | 440 url_request_->GetTotalReceivedBytes()); |
| 437 } | 441 } |
| 438 | 442 |
| 439 } // namespace cronet | 443 } // namespace cronet |
| OLD | NEW |