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 #ifndef CHROMEOS_NETWORK_NETWORK_UTIL_H_ | 5 #ifndef CHROMEOS_NETWORK_NETWORK_UTIL_H_ |
6 #define CHROMEOS_NETWORK_NETWORK_UTIL_H_ | 6 #define CHROMEOS_NETWORK_NETWORK_UTIL_H_ |
7 | 7 |
8 // This header is introduced to make it easy to switch from chromeos_network.cc | 8 // This header is introduced to make it easy to switch from chromeos_network.cc |
9 // to Chrome's own DBus code. crosbug.com/16557 | 9 // to Chrome's own DBus code. crosbug.com/16557 |
10 // All calls to functions in chromeos_network.h should be made through | 10 // All calls to functions in chromeos_network.h should be made through |
11 // functions provided by this header. | 11 // functions provided by this header. |
12 | 12 |
13 #include <string> | 13 #include <string> |
14 #include <vector> | 14 #include <vector> |
15 | 15 |
16 #include "base/basictypes.h" | 16 #include "base/basictypes.h" |
17 #include "base/callback.h" | 17 #include "base/callback.h" |
18 #include "base/memory/scoped_ptr.h" | 18 #include "base/memory/scoped_ptr.h" |
19 #include "base/time/time.h" | 19 #include "base/time/time.h" |
20 #include "base/values.h" | 20 #include "base/values.h" |
21 #include "chromeos/chromeos_export.h" | 21 #include "chromeos/chromeos_export.h" |
22 | 22 |
23 namespace base { | 23 namespace base { |
24 class ListValue; | 24 class ListValue; |
25 } | 25 } |
26 | 26 |
27 namespace chromeos { | 27 namespace chromeos { |
28 | 28 |
| 29 class FavoriteState; |
29 class NetworkTypePattern; | 30 class NetworkTypePattern; |
30 | 31 |
31 // Struct for passing wifi access point data. | 32 // Struct for passing wifi access point data. |
32 struct CHROMEOS_EXPORT WifiAccessPoint { | 33 struct CHROMEOS_EXPORT WifiAccessPoint { |
33 WifiAccessPoint(); | 34 WifiAccessPoint(); |
34 ~WifiAccessPoint(); | 35 ~WifiAccessPoint(); |
35 std::string ssid; // The ssid of the WiFi node if available. | 36 std::string ssid; // The ssid of the WiFi node if available. |
36 std::string mac_address; // The mac address of the WiFi node. | 37 std::string mac_address; // The mac address of the WiFi node. |
37 base::Time timestamp; // Timestamp when this AP was detected. | 38 base::Time timestamp; // Timestamp when this AP was detected. |
38 int signal_strength; // Radio signal strength measured in dBm. | 39 int signal_strength; // Radio signal strength measured in dBm. |
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
79 // Converts a |netmask| to a prefixlen. (for IPv4 only) | 80 // Converts a |netmask| to a prefixlen. (for IPv4 only) |
80 // e.g. a |netmask| of 255.255.255.0 is converted to a prefixlen of 24 | 81 // e.g. a |netmask| of 255.255.255.0 is converted to a prefixlen of 24 |
81 CHROMEOS_EXPORT int32 NetmaskToPrefixLength(const std::string& netmask); | 82 CHROMEOS_EXPORT int32 NetmaskToPrefixLength(const std::string& netmask); |
82 | 83 |
83 // Parses |list|, which contains DictionaryValues and returns a vector of | 84 // Parses |list|, which contains DictionaryValues and returns a vector of |
84 // CellularScanResult in |scan_results|. Returns false if parsing fails, | 85 // CellularScanResult in |scan_results|. Returns false if parsing fails, |
85 // in which case the contents of |scan_results| will be undefined. | 86 // in which case the contents of |scan_results| will be undefined. |
86 CHROMEOS_EXPORT bool ParseCellularScanResults( | 87 CHROMEOS_EXPORT bool ParseCellularScanResults( |
87 const base::ListValue& list, std::vector<CellularScanResult>* scan_results); | 88 const base::ListValue& list, std::vector<CellularScanResult>* scan_results); |
88 | 89 |
89 // Retrieves the list of visible network services by passing |pattern| to | 90 // Retrieves the ONC state dictionary for |favorite| using GetStateProperties. |
90 // NetworkStateHandler::GetNetworkListByType() and translates each into a list | 91 // This includes properties from the corresponding NetworkState if it exists. |
91 // of ONC dictionaries using TranslateShillServiceToONCPart. | 92 CHROMEOS_EXPORT scoped_ptr<base::DictionaryValue> TranslateFavoriteStateToONC( |
| 93 const FavoriteState* favorite); |
| 94 |
| 95 // Retrieves the list of network services by passing |pattern|, |
| 96 // |configured_only|, and |visible_only| to NetworkStateHandler:: |
| 97 // GetNetworkListByType(). Translates the result into a list of ONC |
| 98 // dictionaries using TranslateShillServiceToONCPart. |limit| is used to limit |
| 99 // the number of results. |
92 CHROMEOS_EXPORT scoped_ptr<base::ListValue> TranslateNetworkListToONC( | 100 CHROMEOS_EXPORT scoped_ptr<base::ListValue> TranslateNetworkListToONC( |
93 NetworkTypePattern pattern); | 101 NetworkTypePattern pattern, |
| 102 bool configured_only, |
| 103 bool visible_only, |
| 104 int limit); |
94 | 105 |
95 } // namespace network_util | 106 } // namespace network_util |
96 } // namespace chromeos | 107 } // namespace chromeos |
97 | 108 |
98 #endif // CHROMEOS_NETWORK_NETWORK_UTIL_H_ | 109 #endif // CHROMEOS_NETWORK_NETWORK_UTIL_H_ |
OLD | NEW |