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

Side by Side Diff: chromeos/network/network_state_handler.h

Issue 275543005: Use GUID instead of ServicePath in networkingPrivate API (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: . Created 6 years, 7 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 CHROMEOS_NETWORK_NETWORK_STATE_HANDLER_H_ 5 #ifndef CHROMEOS_NETWORK_NETWORK_STATE_HANDLER_H_
6 #define CHROMEOS_NETWORK_NETWORK_STATE_HANDLER_H_ 6 #define CHROMEOS_NETWORK_NETWORK_STATE_HANDLER_H_
7 7
8 #include <map> 8 #include <map>
9 #include <set> 9 #include <set>
10 #include <string> 10 #include <string>
(...skipping 157 matching lines...) Expand 10 before | Expand all | Expand 10 after
168 // favorite is visible and retrieve the complete properties (and vice-versa). 168 // favorite is visible and retrieve the complete properties (and vice-versa).
169 void GetFavoriteList(FavoriteStateList* list) const; 169 void GetFavoriteList(FavoriteStateList* list) const;
170 170
171 // Like GetFavoriteList() but only returns favorites with matching |type|. 171 // Like GetFavoriteList() but only returns favorites with matching |type|.
172 void GetFavoriteListByType(const NetworkTypePattern& type, 172 void GetFavoriteListByType(const NetworkTypePattern& type,
173 FavoriteStateList* list) const; 173 FavoriteStateList* list) const;
174 174
175 // Finds and returns a favorite state by |service_path| or NULL if not found. 175 // Finds and returns a favorite state by |service_path| or NULL if not found.
176 const FavoriteState* GetFavoriteState(const std::string& service_path) const; 176 const FavoriteState* GetFavoriteState(const std::string& service_path) const;
177 177
178 // Finds the FavoriteState associated with |guid|. Note: The FavoriteState
179 // may or may not be in a profile (IsProfile() may be false), and may or may
180 // not be visible.
181 const FavoriteState* GetFavoriteStateFromGuid(const std::string& guid) const;
182
178 // Requests a network scan. This may trigger updates to the network 183 // Requests a network scan. This may trigger updates to the network
179 // list, which will trigger the appropriate observer calls. 184 // list, which will trigger the appropriate observer calls.
180 void RequestScan() const; 185 void RequestScan() const;
181 186
182 // Request a scan if not scanning and run |callback| when the Scanning state 187 // Request a scan if not scanning and run |callback| when the Scanning state
183 // for any Device of network type |type| completes. 188 // for any Device of network type |type| completes.
184 void WaitForScan(const std::string& type, const base::Closure& callback); 189 void WaitForScan(const std::string& type, const base::Closure& callback);
185 190
186 // Request a network scan then signal Shill to connect to the best available 191 // Request a network scan then signal Shill to connect to the best available
187 // networks when completed. 192 // networks when completed.
(...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after
281 virtual void DefaultNetworkServiceChanged( 286 virtual void DefaultNetworkServiceChanged(
282 const std::string& service_path) OVERRIDE; 287 const std::string& service_path) OVERRIDE;
283 288
284 // Called after construction. Called explicitly by tests after adding 289 // Called after construction. Called explicitly by tests after adding
285 // test observers. 290 // test observers.
286 void InitShillPropertyHandler(); 291 void InitShillPropertyHandler();
287 292
288 private: 293 private:
289 typedef std::list<base::Closure> ScanCallbackList; 294 typedef std::list<base::Closure> ScanCallbackList;
290 typedef std::map<std::string, ScanCallbackList> ScanCompleteCallbackMap; 295 typedef std::map<std::string, ScanCallbackList> ScanCompleteCallbackMap;
296 typedef std::map<std::string, std::string> SpecifierGuidMap;
291 friend class NetworkStateHandlerTest; 297 friend class NetworkStateHandlerTest;
292 FRIEND_TEST_ALL_PREFIXES(NetworkStateHandlerTest, NetworkStateHandlerStub); 298 FRIEND_TEST_ALL_PREFIXES(NetworkStateHandlerTest, NetworkStateHandlerStub);
293 299
294 // NetworkState specific method for UpdateManagedStateProperties which 300 // NetworkState specific method for UpdateManagedStateProperties which
295 // notifies observers. 301 // notifies observers.
296 void UpdateNetworkStateProperties(NetworkState* network, 302 void UpdateNetworkStateProperties(NetworkState* network,
297 const base::DictionaryValue& properties); 303 const base::DictionaryValue& properties);
298 304
305 // Ensure a valid GUID for FavoriteState and update the NetworkState GUID from
306 // the corresponding FavoriteState if necessary.
307 void UpdateGuid(ManagedState* managed);
308
299 // Sends DeviceListChanged() to observers and logs an event. 309 // Sends DeviceListChanged() to observers and logs an event.
300 void NotifyDeviceListChanged(); 310 void NotifyDeviceListChanged();
301 311
302 // Non-const getters for managed entries. These are const so that they can 312 // Non-const getters for managed entries. These are const so that they can
303 // be called by Get[Network|Device]State, even though they return non-const 313 // be called by Get[Network|Device]State, even though they return non-const
304 // pointers. 314 // pointers.
305 DeviceState* GetModifiableDeviceState(const std::string& device_path) const; 315 DeviceState* GetModifiableDeviceState(const std::string& device_path) const;
306 NetworkState* GetModifiableNetworkState( 316 NetworkState* GetModifiableNetworkState(
307 const std::string& service_path) const; 317 const std::string& service_path) const;
318 FavoriteState* GetModifiableFavoriteState(
319 const std::string& service_path) const;
308 ManagedState* GetModifiableManagedState(const ManagedStateList* managed_list, 320 ManagedState* GetModifiableManagedState(const ManagedStateList* managed_list,
309 const std::string& path) const; 321 const std::string& path) const;
310 322
311 // Gets the list specified by |type|. 323 // Gets the list specified by |type|.
312 ManagedStateList* GetManagedList(ManagedState::ManagedType type); 324 ManagedStateList* GetManagedList(ManagedState::ManagedType type);
313 325
314 // Helper function to notify observers. Calls CheckDefaultNetworkChanged(). 326 // Helper function to notify observers. Calls CheckDefaultNetworkChanged().
315 void OnNetworkConnectionStateChanged(NetworkState* network); 327 void OnNetworkConnectionStateChanged(NetworkState* network);
316 328
317 // Notifies observers when the default network or its properties change. 329 // Notifies observers when the default network or its properties change.
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
350 362
351 // Keeps track of the default network for notifying observers when it changes. 363 // Keeps track of the default network for notifying observers when it changes.
352 std::string default_network_path_; 364 std::string default_network_path_;
353 365
354 // List of interfaces on which portal check is enabled. 366 // List of interfaces on which portal check is enabled.
355 std::string check_portal_list_; 367 std::string check_portal_list_;
356 368
357 // Callbacks to run when a scan for the technology type completes. 369 // Callbacks to run when a scan for the technology type completes.
358 ScanCompleteCallbackMap scan_complete_callbacks_; 370 ScanCompleteCallbackMap scan_complete_callbacks_;
359 371
372 // Map of network specifiers to guids.
373 SpecifierGuidMap specifier_guid_map_;
374
360 DISALLOW_COPY_AND_ASSIGN(NetworkStateHandler); 375 DISALLOW_COPY_AND_ASSIGN(NetworkStateHandler);
361 }; 376 };
362 377
363 } // namespace chromeos 378 } // namespace chromeos
364 379
365 #endif // CHROMEOS_NETWORK_NETWORK_STATE_HANDLER_H_ 380 #endif // CHROMEOS_NETWORK_NETWORK_STATE_HANDLER_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698