Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 "chrome/browser/android/data_usage/external_data_use_observer_bridge.h" | 5 #include "chrome/browser/android/data_usage/external_data_use_observer_bridge.h" |
| 6 | 6 |
| 7 #include <vector> | 7 #include <vector> |
| 8 | 8 |
| 9 #include "base/android/context_utils.h" | 9 #include "base/android/context_utils.h" |
| 10 #include "base/android/jni_string.h" | 10 #include "base/android/jni_string.h" |
| (...skipping 110 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 121 return; | 121 return; |
| 122 | 122 |
| 123 if (is_first_matching_rule_fetch_) { | 123 if (is_first_matching_rule_fetch_) { |
| 124 is_first_matching_rule_fetch_ = false; | 124 is_first_matching_rule_fetch_ = false; |
| 125 UMA_HISTOGRAM_TIMES("DataUsage.Perf.MatchingRuleFirstFetchDuration", | 125 UMA_HISTOGRAM_TIMES("DataUsage.Perf.MatchingRuleFirstFetchDuration", |
| 126 base::TimeTicks::Now() - construct_time_); | 126 base::TimeTicks::Now() - construct_time_); |
| 127 } | 127 } |
| 128 | 128 |
| 129 data_use_tab_model_->RegisterURLRegexes( | 129 data_use_tab_model_->RegisterURLRegexes( |
| 130 app_package_name_native, domain_path_regex_native, label_native); | 130 app_package_name_native, domain_path_regex_native, label_native); |
| 131 | |
| 132 io_task_runner_->PostTask( | |
| 133 FROM_HERE, base::Bind(&ExternalDataUseObserver::OnFetchMatchingRulesDone, | |
|
tbansal1
2016/03/10 01:00:58
Why is this callback needed? This is not preventi
Raj
2016/03/10 02:13:34
This callback updates the last_matching_rules_fetc
| |
| 134 external_data_use_observer_)); | |
| 131 } | 135 } |
| 132 | 136 |
| 133 void ExternalDataUseObserverBridge::ReportDataUse( | 137 void ExternalDataUseObserverBridge::ReportDataUse( |
| 134 const std::string& label, | 138 const std::string& label, |
| 135 net::NetworkChangeNotifier::ConnectionType connection_type, | 139 net::NetworkChangeNotifier::ConnectionType connection_type, |
| 136 const std::string& mcc_mnc, | 140 const std::string& mcc_mnc, |
| 137 const base::Time& start_time, | 141 const base::Time& start_time, |
| 138 const base::Time& end_time, | 142 const base::Time& end_time, |
| 139 int64_t bytes_downloaded, | 143 int64_t bytes_downloaded, |
| 140 int64_t bytes_uploaded) const { | 144 int64_t bytes_uploaded) const { |
| (...skipping 27 matching lines...) Expand all Loading... | |
| 168 } | 172 } |
| 169 | 173 |
| 170 void ExternalDataUseObserverBridge::OnControlAppInstallStateChange( | 174 void ExternalDataUseObserverBridge::OnControlAppInstallStateChange( |
| 171 JNIEnv* env, | 175 JNIEnv* env, |
| 172 jobject obj, | 176 jobject obj, |
| 173 bool is_control_app_installed) const { | 177 bool is_control_app_installed) const { |
| 174 DCHECK(thread_checker_.CalledOnValidThread()); | 178 DCHECK(thread_checker_.CalledOnValidThread()); |
| 175 data_use_tab_model_->OnControlAppInstallStateChange(is_control_app_installed); | 179 data_use_tab_model_->OnControlAppInstallStateChange(is_control_app_installed); |
| 176 } | 180 } |
| 177 | 181 |
| 182 void ExternalDataUseObserverBridge::ShouldRegisterAsDataUseObserver( | |
| 183 bool should_register) const { | |
| 184 DCHECK(thread_checker_.CalledOnValidThread()); | |
| 185 io_task_runner_->PostTask( | |
| 186 FROM_HERE, | |
| 187 base::Bind(&ExternalDataUseObserver::ShouldRegisterAsDataUseObserver, | |
| 188 external_data_use_observer_, should_register)); | |
| 189 } | |
| 190 | |
| 178 bool RegisterExternalDataUseObserver(JNIEnv* env) { | 191 bool RegisterExternalDataUseObserver(JNIEnv* env) { |
| 179 return RegisterNativesImpl(env); | 192 return RegisterNativesImpl(env); |
| 180 } | 193 } |
| 181 | 194 |
| 182 } // namespace android | 195 } // namespace android |
| 183 | 196 |
| 184 } // namespace chrome | 197 } // namespace chrome |
| OLD | NEW |