Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(359)

Side by Side Diff: chrome/browser/chromeos/cros/network_library.h

Issue 10827283: This updates the StaticIP configuration UI to match new mocks. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix unit test Created 8 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
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 CHROME_BROWSER_CHROMEOS_CROS_NETWORK_LIBRARY_H_ 5 #ifndef CHROME_BROWSER_CHROMEOS_CROS_NETWORK_LIBRARY_H_
6 #define CHROME_BROWSER_CHROMEOS_CROS_NETWORK_LIBRARY_H_ 6 #define CHROME_BROWSER_CHROMEOS_CROS_NETWORK_LIBRARY_H_
7 7
8 #include <map> 8 #include <map>
9 #include <string> 9 #include <string>
10 #include <vector> 10 #include <vector>
(...skipping 1204 matching lines...) Expand 10 before | Expand all | Expand 10 after
1215 // This class handles the interaction with the ChromeOS network library APIs. 1215 // This class handles the interaction with the ChromeOS network library APIs.
1216 // Classes can add themselves as observers. Users can get an instance of the 1216 // Classes can add themselves as observers. Users can get an instance of the
1217 // library like this: chromeos::CrosLibrary::Get()->GetNetworkLibrary() 1217 // library like this: chromeos::CrosLibrary::Get()->GetNetworkLibrary()
1218 class NetworkLibrary { 1218 class NetworkLibrary {
1219 public: 1219 public:
1220 enum HardwareAddressFormat { 1220 enum HardwareAddressFormat {
1221 FORMAT_RAW_HEX, 1221 FORMAT_RAW_HEX,
1222 FORMAT_COLON_SEPARATED_HEX 1222 FORMAT_COLON_SEPARATED_HEX
1223 }; 1223 };
1224 1224
1225 // Used to configure which IP parameters will be specified by DHCP and which
1226 // will be set by the user.
1227 enum UseDHCP {
1228 USE_DHCP_ADDRESS = 0x1,
1229 USE_DHCP_NETMASK = 0x1 << 1,
1230 USE_DHCP_GATEWAY = 0x1 << 2,
1231 USE_DHCP_NAME_SERVERS = 0x1 << 3,
1232 USE_DHCP_ALL_ROUTING_INFO =
1233 (USE_DHCP_ADDRESS |
1234 USE_DHCP_NETMASK |
1235 USE_DHCP_GATEWAY),
1236 };
1237
1225 class NetworkManagerObserver { 1238 class NetworkManagerObserver {
1226 public: 1239 public:
1227 // Called when the state of the network manager has changed, 1240 // Called when the state of the network manager has changed,
1228 // for example, networks have appeared or disappeared. 1241 // for example, networks have appeared or disappeared.
1229 virtual void OnNetworkManagerChanged(NetworkLibrary* obj) = 0; 1242 virtual void OnNetworkManagerChanged(NetworkLibrary* obj) = 0;
1230 protected: 1243 protected:
1231 virtual ~NetworkManagerObserver() { } 1244 virtual ~NetworkManagerObserver() { }
1232 }; 1245 };
1233 1246
1234 class NetworkObserver { 1247 class NetworkObserver {
(...skipping 414 matching lines...) Expand 10 before | Expand all | Expand 10 after
1649 1662
1650 // Fetches IP configs and hardware address for a given device_path. 1663 // Fetches IP configs and hardware address for a given device_path.
1651 // The hardware address is usually a MAC address like "0011AA22BB33". 1664 // The hardware address is usually a MAC address like "0011AA22BB33".
1652 // |hardware_address| will be an empty string, if no hardware address is 1665 // |hardware_address| will be an empty string, if no hardware address is
1653 // found. 1666 // found.
1654 virtual NetworkIPConfigVector GetIPConfigs( 1667 virtual NetworkIPConfigVector GetIPConfigs(
1655 const std::string& device_path, 1668 const std::string& device_path,
1656 std::string* hardware_address, 1669 std::string* hardware_address,
1657 HardwareAddressFormat) = 0; 1670 HardwareAddressFormat) = 0;
1658 1671
1659 // Sets an IP config. This is called when user changes from dhcp to static 1672 // Sets the configuration of the IP parameters. This is called when user
1660 // or vice versa or when user changes the ip config info. 1673 // changes IP settings from dhcp to static or vice versa or when user changes
1661 // If nothing is changed, this method does nothing. 1674 // the ip config info. If nothing is changed, this method does nothing.
1662 virtual void SetIPConfig(const NetworkIPConfig& ipconfig) = 0; 1675 // |dhcp_usage_mask| is a bitmask composed of items from the UseDHCP enum, and
1676 // indicates which of the supplied values are overridden by values given by
1677 // the default IP acquisition technique for the service (DHCP, usually).
1678 virtual void SetIPParameters(const std::string& service_path,
1679 const std::string& address,
1680 const std::string& netmask,
1681 const std::string& gateway,
1682 const std::string& name_servers,
1683 int dhcp_usage_mask) = 0;
1663 1684
1664 // This will connect to a preferred network if the currently connected 1685 // This will connect to a preferred network if the currently connected
1665 // network is not preferred. This should be called when the active profile 1686 // network is not preferred. This should be called when the active profile
1666 // changes. 1687 // changes.
1667 virtual void SwitchToPreferredNetwork() = 0; 1688 virtual void SwitchToPreferredNetwork() = 0;
1668 1689
1669 // Load networks from an Open Network Configuration blob. 1690 // Load networks from an Open Network Configuration blob.
1670 // If there was an error, this will return false and |error| will be set to 1691 // If there was an error, this will return false and |error| will be set to
1671 // the error message. 1692 // the error message.
1672 virtual bool LoadOncNetworks(const std::string& onc_blob, 1693 virtual bool LoadOncNetworks(const std::string& onc_blob,
(...skipping 10 matching lines...) Expand all
1683 const std::string& service_path) = 0; 1704 const std::string& service_path) = 0;
1684 1705
1685 // Factory function, creates a new instance and returns ownership. 1706 // Factory function, creates a new instance and returns ownership.
1686 // For normal usage, access the singleton via CrosLibrary::Get(). 1707 // For normal usage, access the singleton via CrosLibrary::Get().
1687 static NetworkLibrary* GetImpl(bool stub); 1708 static NetworkLibrary* GetImpl(bool stub);
1688 }; 1709 };
1689 1710
1690 } // namespace chromeos 1711 } // namespace chromeos
1691 1712
1692 #endif // CHROME_BROWSER_CHROMEOS_CROS_NETWORK_LIBRARY_H_ 1713 #endif // CHROME_BROWSER_CHROMEOS_CROS_NETWORK_LIBRARY_H_
OLDNEW
« no previous file with comments | « chrome/browser/chromeos/cros/network_ip_config.cc ('k') | chrome/browser/chromeos/cros/network_library_impl_cros.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698