OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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/chromeos/cros/network_library_impl_cros.h" | 5 #include "chrome/browser/chromeos/cros/network_library_impl_cros.h" |
6 | 6 |
7 #include <dbus/dbus-glib.h> | 7 #include <dbus/dbus-glib.h> |
| 8 #include "base/command_line.h" |
8 #include "base/json/json_writer.h" // for debug output only. | 9 #include "base/json/json_writer.h" // for debug output only. |
9 #include "base/metrics/histogram.h" | 10 #include "base/metrics/histogram.h" |
10 #include "chrome/browser/chromeos/cros/cros_library.h" | 11 #include "chrome/browser/chromeos/cros/cros_library.h" |
11 #include "chrome/browser/chromeos/cros/gvalue_util.h" | 12 #include "chrome/browser/chromeos/cros/gvalue_util.h" |
12 #include "chrome/browser/chromeos/cros/native_network_constants.h" | 13 #include "chrome/browser/chromeos/cros/native_network_constants.h" |
13 #include "chrome/browser/chromeos/cros/native_network_parser.h" | 14 #include "chrome/browser/chromeos/cros/native_network_parser.h" |
14 #include "chrome/browser/chromeos/cros_settings.h" | 15 #include "chrome/browser/chromeos/cros_settings.h" |
| 16 #include "chrome/common/chrome_switches.h" |
15 #include "content/public/browser/browser_thread.h" | 17 #include "content/public/browser/browser_thread.h" |
16 #include "third_party/cros_system_api/dbus/service_constants.h" | 18 #include "third_party/cros_system_api/dbus/service_constants.h" |
17 | 19 |
18 using content::BrowserThread; | 20 using content::BrowserThread; |
19 | 21 |
20 namespace chromeos { | 22 namespace chromeos { |
21 | 23 |
22 namespace { | 24 namespace { |
23 | 25 |
24 // List of cellular operators names that should have data roaming always enabled | 26 // List of cellular operators names that should have data roaming always enabled |
(...skipping 12 matching lines...) Expand all Loading... |
37 } | 39 } |
38 | 40 |
39 } // namespace | 41 } // namespace |
40 | 42 |
41 //////////////////////////////////////////////////////////////////////////// | 43 //////////////////////////////////////////////////////////////////////////// |
42 | 44 |
43 NetworkLibraryImplCros::NetworkLibraryImplCros() | 45 NetworkLibraryImplCros::NetworkLibraryImplCros() |
44 : NetworkLibraryImplBase(), | 46 : NetworkLibraryImplBase(), |
45 network_manager_monitor_(NULL), | 47 network_manager_monitor_(NULL), |
46 data_plan_monitor_(NULL) { | 48 data_plan_monitor_(NULL) { |
| 49 if (CommandLine::ForCurrentProcess()->HasSwitch(switches::kDisableLibcros)) { |
| 50 LOG(INFO) << "Using non Libcros network fucntions."; |
| 51 SetLibcrosNetworkFunctionsEnabled(false); |
| 52 } |
47 } | 53 } |
48 | 54 |
49 NetworkLibraryImplCros::~NetworkLibraryImplCros() { | 55 NetworkLibraryImplCros::~NetworkLibraryImplCros() { |
50 if (network_manager_monitor_) | 56 if (network_manager_monitor_) |
51 CrosDisconnectNetworkPropertiesMonitor(network_manager_monitor_); | 57 CrosDisconnectNetworkPropertiesMonitor(network_manager_monitor_); |
52 if (data_plan_monitor_) | 58 if (data_plan_monitor_) |
53 CrosDisconnectDataPlanUpdateMonitor(data_plan_monitor_); | 59 CrosDisconnectDataPlanUpdateMonitor(data_plan_monitor_); |
54 for (NetworkPropertiesMonitorMap::iterator iter = | 60 for (NetworkPropertiesMonitorMap::iterator iter = |
55 montitored_networks_.begin(); | 61 montitored_networks_.begin(); |
56 iter != montitored_networks_.end(); ++iter) { | 62 iter != montitored_networks_.end(); ++iter) { |
(...skipping 1274 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1331 // Switch back to signed settings value. | 1337 // Switch back to signed settings value. |
1332 SetCellularDataRoamingAllowed(settings_value); | 1338 SetCellularDataRoamingAllowed(settings_value); |
1333 } | 1339 } |
1334 } | 1340 } |
1335 } | 1341 } |
1336 NotifyNetworkManagerChanged(false); // Not forced. | 1342 NotifyNetworkManagerChanged(false); // Not forced. |
1337 AddNetworkDeviceObserver(device_path, network_device_observer_.get()); | 1343 AddNetworkDeviceObserver(device_path, network_device_observer_.get()); |
1338 } | 1344 } |
1339 | 1345 |
1340 } // namespace chromeos | 1346 } // namespace chromeos |
OLD | NEW |