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 #ifndef COMPONENTS_OFFLINE_PAGES_BACKGROUND_DEVICE_CONDITIONS_H_ | 5 #ifndef COMPONENTS_OFFLINE_PAGES_BACKGROUND_DEVICE_CONDITIONS_H_ |
6 #define COMPONENTS_OFFLINE_PAGES_BACKGROUND_DEVICE_CONDITIONS_H_ | 6 #define COMPONENTS_OFFLINE_PAGES_BACKGROUND_DEVICE_CONDITIONS_H_ |
7 | 7 |
8 #include "net/base/network_change_notifier.h" | 8 #include "net/base/network_change_notifier.h" |
9 | 9 |
10 namespace offline_pages { | 10 namespace offline_pages { |
11 | 11 |
12 // Device network and power conditions. | 12 // Device network and power conditions. |
13 class DeviceConditions { | 13 class DeviceConditions { |
14 public: | 14 public: |
15 DeviceConditions( | 15 DeviceConditions( |
16 bool power_connected, | 16 bool power_connected, |
17 int battery_percentage, | 17 int battery_percentage, |
18 net::NetworkChangeNotifier::ConnectionType net_connection_type) | 18 net::NetworkChangeNotifier::ConnectionType net_connection_type) |
19 : power_connected_(power_connected), | 19 : power_connected_(power_connected), |
20 battery_percentage_(battery_percentage), | 20 battery_percentage_(battery_percentage), |
21 net_connection_type_(net_connection_type) {} | 21 net_connection_type_(net_connection_type) {} |
22 | 22 |
| 23 DeviceConditions() |
| 24 : power_connected_(true), battery_percentage_(75), |
| 25 net_connection_type_(net::NetworkChangeNotifier::CONNECTION_WIFI) {} |
| 26 |
23 // Returns whether power is connected. | 27 // Returns whether power is connected. |
24 bool IsPowerConnected() const { return power_connected_; } | 28 bool IsPowerConnected() const { return power_connected_; } |
25 | 29 |
26 // Returns percentage of remaining battery power (0-100). | 30 // Returns percentage of remaining battery power (0-100). |
27 int GetBatteryPercentage() const { return battery_percentage_; } | 31 int GetBatteryPercentage() const { return battery_percentage_; } |
28 | 32 |
29 // Returns the current type of network connection, if any. | 33 // Returns the current type of network connection, if any. |
30 net::NetworkChangeNotifier::ConnectionType GetNetConnectionType() const { | 34 net::NetworkChangeNotifier::ConnectionType GetNetConnectionType() const { |
31 return net_connection_type_; | 35 return net_connection_type_; |
32 } | 36 } |
33 | 37 |
34 private: | 38 private: |
35 const bool power_connected_; | 39 const bool power_connected_; |
36 const int battery_percentage_; | 40 const int battery_percentage_; |
37 const net::NetworkChangeNotifier::ConnectionType net_connection_type_; | 41 const net::NetworkChangeNotifier::ConnectionType net_connection_type_; |
| 42 |
| 43 // NOTE: We intentionally allow the default copy constructor and assignment. |
38 }; | 44 }; |
39 | 45 |
40 } // namespace offline_pages | 46 } // namespace offline_pages |
41 | 47 |
42 #endif // COMPONENTS_OFFLINE_PAGES_BACKGROUND_DEVICE_CONDITIONS_H_ | 48 #endif // COMPONENTS_OFFLINE_PAGES_BACKGROUND_DEVICE_CONDITIONS_H_ |
OLD | NEW |