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 "chromeos/components/tether/initializer.h" | 5 #include "chromeos/components/tether/initializer.h" |
6 | 6 |
7 #include "base/bind.h" | 7 #include "base/bind.h" |
8 #include "chromeos/components/tether/active_host.h" | 8 #include "chromeos/components/tether/active_host.h" |
9 #include "chromeos/components/tether/active_host_network_state_updater.h" | 9 #include "chromeos/components/tether/active_host_network_state_updater.h" |
10 #include "chromeos/components/tether/ble_connection_manager.h" | 10 #include "chromeos/components/tether/ble_connection_manager.h" |
11 #include "chromeos/components/tether/device_id_tether_network_guid_map.h" | 11 #include "chromeos/components/tether/device_id_tether_network_guid_map.h" |
12 #include "chromeos/components/tether/host_scan_cache.h" | 12 #include "chromeos/components/tether/host_scan_cache.h" |
13 #include "chromeos/components/tether/host_scan_device_prioritizer_impl.h" | 13 #include "chromeos/components/tether/host_scan_device_prioritizer_impl.h" |
14 #include "chromeos/components/tether/host_scan_scheduler.h" | 14 #include "chromeos/components/tether/host_scan_scheduler.h" |
15 #include "chromeos/components/tether/host_scanner.h" | 15 #include "chromeos/components/tether/host_scanner.h" |
16 #include "chromeos/components/tether/keep_alive_scheduler.h" | 16 #include "chromeos/components/tether/keep_alive_scheduler.h" |
17 #include "chromeos/components/tether/network_configuration_remover.h" | 17 #include "chromeos/components/tether/network_configuration_remover.h" |
18 #include "chromeos/components/tether/network_connection_handler_tether_delegate.
h" | 18 #include "chromeos/components/tether/network_connection_handler_tether_delegate.
h" |
19 #include "chromeos/components/tether/notification_presenter.h" | 19 #include "chromeos/components/tether/notification_presenter.h" |
20 #include "chromeos/components/tether/tether_connector.h" | 20 #include "chromeos/components/tether/tether_connector.h" |
21 #include "chromeos/components/tether/tether_disconnector.h" | 21 #include "chromeos/components/tether/tether_disconnector_impl.h" |
22 #include "chromeos/components/tether/tether_host_fetcher.h" | 22 #include "chromeos/components/tether/tether_host_fetcher.h" |
23 #include "chromeos/components/tether/tether_host_response_recorder.h" | 23 #include "chromeos/components/tether/tether_host_response_recorder.h" |
24 #include "chromeos/components/tether/tether_network_disconnection_handler.h" | 24 #include "chromeos/components/tether/tether_network_disconnection_handler.h" |
25 #include "chromeos/components/tether/wifi_hotspot_connector.h" | 25 #include "chromeos/components/tether/wifi_hotspot_connector.h" |
26 #include "chromeos/network/managed_network_configuration_handler.h" | 26 #include "chromeos/network/managed_network_configuration_handler.h" |
27 #include "chromeos/network/network_connect.h" | 27 #include "chromeos/network/network_connect.h" |
28 #include "chromeos/network/network_connection_handler.h" | 28 #include "chromeos/network/network_connection_handler.h" |
29 #include "chromeos/network/network_state_handler.h" | 29 #include "chromeos/network/network_state_handler.h" |
30 #include "components/cryptauth/bluetooth_throttler_impl.h" | 30 #include "components/cryptauth/bluetooth_throttler_impl.h" |
31 #include "components/cryptauth/cryptauth_service.h" | 31 #include "components/cryptauth/cryptauth_service.h" |
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
87 PA_LOG(INFO) << "Shutting down Tether feature."; | 87 PA_LOG(INFO) << "Shutting down Tether feature."; |
88 delete instance_; | 88 delete instance_; |
89 instance_ = nullptr; | 89 instance_ = nullptr; |
90 } | 90 } |
91 } | 91 } |
92 | 92 |
93 // static | 93 // static |
94 void Initializer::RegisterProfilePrefs(PrefRegistrySimple* registry) { | 94 void Initializer::RegisterProfilePrefs(PrefRegistrySimple* registry) { |
95 ActiveHost::RegisterPrefs(registry); | 95 ActiveHost::RegisterPrefs(registry); |
96 TetherHostResponseRecorder::RegisterPrefs(registry); | 96 TetherHostResponseRecorder::RegisterPrefs(registry); |
| 97 TetherDisconnectorImpl::RegisterPrefs(registry); |
97 } | 98 } |
98 | 99 |
99 Initializer::Initializer( | 100 Initializer::Initializer( |
100 cryptauth::CryptAuthService* cryptauth_service, | 101 cryptauth::CryptAuthService* cryptauth_service, |
101 std::unique_ptr<NotificationPresenter> notification_presenter, | 102 std::unique_ptr<NotificationPresenter> notification_presenter, |
102 PrefService* pref_service, | 103 PrefService* pref_service, |
103 ProfileOAuth2TokenService* token_service, | 104 ProfileOAuth2TokenService* token_service, |
104 NetworkStateHandler* network_state_handler, | 105 NetworkStateHandler* network_state_handler, |
105 ManagedNetworkConfigurationHandler* managed_network_configuration_handler, | 106 ManagedNetworkConfigurationHandler* managed_network_configuration_handler, |
106 NetworkConnect* network_connect, | 107 NetworkConnect* network_connect, |
(...skipping 108 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
215 network_state_handler_, host_scanner_.get()); | 216 network_state_handler_, host_scanner_.get()); |
216 tether_connector_ = base::MakeUnique<TetherConnector>( | 217 tether_connector_ = base::MakeUnique<TetherConnector>( |
217 network_state_handler_, wifi_hotspot_connector_.get(), active_host_.get(), | 218 network_state_handler_, wifi_hotspot_connector_.get(), active_host_.get(), |
218 tether_host_fetcher_.get(), ble_connection_manager_.get(), | 219 tether_host_fetcher_.get(), ble_connection_manager_.get(), |
219 tether_host_response_recorder_.get(), | 220 tether_host_response_recorder_.get(), |
220 device_id_tether_network_guid_map_.get(), host_scan_cache_.get(), | 221 device_id_tether_network_guid_map_.get(), host_scan_cache_.get(), |
221 notification_presenter_.get()); | 222 notification_presenter_.get()); |
222 network_configuration_remover_ = | 223 network_configuration_remover_ = |
223 base::MakeUnique<NetworkConfigurationRemover>( | 224 base::MakeUnique<NetworkConfigurationRemover>( |
224 network_state_handler_, managed_network_configuration_handler_); | 225 network_state_handler_, managed_network_configuration_handler_); |
225 tether_disconnector_ = base::MakeUnique<TetherDisconnector>( | 226 tether_disconnector_ = base::MakeUnique<TetherDisconnectorImpl>( |
226 network_connection_handler_, network_state_handler_, active_host_.get(), | 227 network_connection_handler_, network_state_handler_, active_host_.get(), |
227 ble_connection_manager_.get(), network_configuration_remover_.get(), | 228 ble_connection_manager_.get(), network_configuration_remover_.get(), |
228 tether_connector_.get(), device_id_tether_network_guid_map_.get(), | 229 tether_connector_.get(), device_id_tether_network_guid_map_.get(), |
229 tether_host_fetcher_.get()); | 230 tether_host_fetcher_.get(), pref_service_); |
230 tether_network_disconnection_handler_ = | 231 tether_network_disconnection_handler_ = |
231 base::MakeUnique<TetherNetworkDisconnectionHandler>( | 232 base::MakeUnique<TetherNetworkDisconnectionHandler>( |
232 active_host_.get(), network_state_handler_, | 233 active_host_.get(), network_state_handler_, |
233 network_configuration_remover_.get()); | 234 network_configuration_remover_.get()); |
234 network_connection_handler_tether_delegate_ = | 235 network_connection_handler_tether_delegate_ = |
235 base::MakeUnique<NetworkConnectionHandlerTetherDelegate>( | 236 base::MakeUnique<NetworkConnectionHandlerTetherDelegate>( |
236 network_connection_handler_, tether_connector_.get(), | 237 network_connection_handler_, tether_connector_.get(), |
237 tether_disconnector_.get()); | 238 tether_disconnector_.get()); |
238 | 239 |
239 // Because Initializer is created on each user log in, it's appropriate to | 240 // Because Initializer is created on each user log in, it's appropriate to |
240 // call this method now. | 241 // call this method now. |
241 host_scan_scheduler_->UserLoggedIn(); | 242 host_scan_scheduler_->UserLoggedIn(); |
242 } | 243 } |
243 | 244 |
244 void Initializer::OnBluetoothAdapterAdvertisingIntervalError( | 245 void Initializer::OnBluetoothAdapterAdvertisingIntervalError( |
245 device::BluetoothAdvertisement::ErrorCode status) { | 246 device::BluetoothAdvertisement::ErrorCode status) { |
246 PA_LOG(ERROR) << "Failed to set Bluetooth advertisement interval; " | 247 PA_LOG(ERROR) << "Failed to set Bluetooth advertisement interval; " |
247 << "cannot use tether feature. Error code: " << status; | 248 << "cannot use tether feature. Error code: " << status; |
248 } | 249 } |
249 | 250 |
250 } // namespace tether | 251 } // namespace tether |
251 | 252 |
252 } // namespace chromeos | 253 } // namespace chromeos |
OLD | NEW |