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/core/data_use_ascriber.h" | 5 #include "components/data_use_measurement/core/data_use_ascriber.h" |
6 | 6 |
7 #include <utility> | 7 #include <utility> |
8 | 8 |
9 #include "base/memory/ptr_util.h" | 9 #include "base/memory/ptr_util.h" |
10 #include "components/data_use_measurement/core/data_use_network_delegate.h" | 10 #include "components/data_use_measurement/core/data_use_network_delegate.h" |
11 #include "components/data_use_measurement/core/data_use_recorder.h" | 11 #include "components/data_use_measurement/core/data_use_recorder.h" |
12 #include "components/data_use_measurement/core/url_request_classifier.h" | 12 #include "components/data_use_measurement/core/url_request_classifier.h" |
13 | 13 |
14 namespace data_use_measurement { | 14 namespace data_use_measurement { |
15 | 15 |
16 std::unique_ptr<net::NetworkDelegate> DataUseAscriber::CreateNetworkDelegate( | 16 std::unique_ptr<net::NetworkDelegate> DataUseAscriber::CreateNetworkDelegate( |
17 std::unique_ptr<net::NetworkDelegate> wrapped_network_delegate, | 17 std::unique_ptr<net::NetworkDelegate> wrapped_network_delegate, |
18 const metrics::UpdateUsagePrefCallbackType& metrics_data_use_forwarder) { | 18 const metrics::UpdateUsagePrefCallbackType& metrics_data_use_forwarder) { |
19 return base::MakeUnique<data_use_measurement::DataUseNetworkDelegate>( | 19 return base::MakeUnique<data_use_measurement::DataUseNetworkDelegate>( |
20 std::move(wrapped_network_delegate), this, CreateURLRequestClassifier(), | 20 std::move(wrapped_network_delegate), this, CreateURLRequestClassifier(), |
21 metrics_data_use_forwarder); | 21 metrics_data_use_forwarder); |
22 } | 22 } |
23 | 23 |
24 void DataUseAscriber::OnBeforeUrlRequest(net::URLRequest* request) { | 24 void DataUseAscriber::OnBeforeUrlRequest(net::URLRequest* request) { |
25 DataUseRecorder* recorder = GetDataUseRecorder(request); | 25 DataUseRecorder* recorder = GetDataUseRecorder(request, true); |
26 if (recorder) | 26 if (recorder) |
27 recorder->OnBeforeUrlRequest(request); | 27 recorder->OnBeforeUrlRequest(request); |
28 } | 28 } |
29 | 29 |
30 void DataUseAscriber::OnBeforeRedirect(net::URLRequest* request, | |
31 const GURL& new_location) {} | |
32 | |
33 void DataUseAscriber::OnNetworkBytesSent(net::URLRequest* request, | 30 void DataUseAscriber::OnNetworkBytesSent(net::URLRequest* request, |
34 int64_t bytes_sent) { | 31 int64_t bytes_sent) { |
35 DataUseRecorder* recorder = GetDataUseRecorder(request); | 32 DataUseRecorder* recorder = GetDataUseRecorder(request, false); |
36 if (recorder) | 33 if (recorder) |
37 recorder->OnNetworkBytesSent(request, bytes_sent); | 34 recorder->OnNetworkBytesSent(request, bytes_sent); |
38 } | 35 } |
39 | 36 |
40 void DataUseAscriber::OnNetworkBytesReceived(net::URLRequest* request, | 37 void DataUseAscriber::OnNetworkBytesReceived(net::URLRequest* request, |
41 int64_t bytes_received) { | 38 int64_t bytes_received) { |
42 DataUseRecorder* recorder = GetDataUseRecorder(request); | 39 DataUseRecorder* recorder = GetDataUseRecorder(request, false); |
43 if (recorder) | 40 if (recorder) |
44 recorder->OnNetworkBytesReceived(request, bytes_received); | 41 recorder->OnNetworkBytesReceived(request, bytes_received); |
45 } | 42 } |
46 | 43 |
| 44 void DataUseAscriber::OnUrlRequestCompleted(net::URLRequest* request, |
| 45 bool started) {} |
| 46 |
47 void DataUseAscriber::OnUrlRequestDestroyed(net::URLRequest* request) { | 47 void DataUseAscriber::OnUrlRequestDestroyed(net::URLRequest* request) { |
48 DataUseRecorder* recorder = GetDataUseRecorder(request); | 48 DataUseRecorder* recorder = GetDataUseRecorder(request, true); |
49 // TODO(kundaji): Enforce DCHECK(recorder). | |
50 if (recorder) | 49 if (recorder) |
51 recorder->OnUrlRequestDestroyed(request); | 50 recorder->OnUrlRequestDestroyed(request); |
52 } | 51 } |
53 | 52 |
54 } // namespace data_use_measurement | 53 } // namespace data_use_measurement |
OLD | NEW |