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

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

Issue 7714004: base: Add AsList() function to Value API. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fix chromeos Created 9 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) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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.h" 5 #include "chrome/browser/chromeos/cros/network_library.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <map> 8 #include <map>
9 #include <set> 9 #include <set>
10 10
(...skipping 159 matching lines...) Expand 10 before | Expand all | Expand 10 after
170 } 170 }
171 171
172 NetworkDevice::~NetworkDevice() {} 172 NetworkDevice::~NetworkDevice() {}
173 173
174 void NetworkDevice::ParseInfo(const DictionaryValue& info) { 174 void NetworkDevice::ParseInfo(const DictionaryValue& info) {
175 if (device_parser_.get()) 175 if (device_parser_.get())
176 device_parser_->UpdateDeviceFromInfo(info, this); 176 device_parser_->UpdateDeviceFromInfo(info, this);
177 } 177 }
178 178
179 bool NetworkDevice::UpdateStatus(const std::string& key, 179 bool NetworkDevice::UpdateStatus(const std::string& key,
180 const Value& value, 180 Value* value,
181 PropertyIndex* index) { 181 PropertyIndex* index) {
182 if (device_parser_.get()) 182 if (device_parser_.get())
183 return device_parser_->UpdateStatus(key, value, this, index); 183 return device_parser_->UpdateStatus(key, value, this, index);
184 return false; 184 return false;
185 } 185 }
186 186
187 //////////////////////////////////////////////////////////////////////////////// 187 ////////////////////////////////////////////////////////////////////////////////
188 // Network 188 // Network
189 189
190 Network::Network(const std::string& service_path, 190 Network::Network(const std::string& service_path,
(...skipping 226 matching lines...) Expand 10 before | Expand all | Expand 10 after
417 ip_address_ = ipconfig.address; 417 ip_address_ = ipconfig.address;
418 break; 418 break;
419 } 419 }
420 } 420 }
421 chromeos::FreeIPConfigStatus(ipconfig_status); 421 chromeos::FreeIPConfigStatus(ipconfig_status);
422 } 422 }
423 } 423 }
424 } 424 }
425 425
426 bool Network::UpdateStatus(const std::string& key, 426 bool Network::UpdateStatus(const std::string& key,
427 const Value& value, 427 Value* value,
428 PropertyIndex* index) { 428 PropertyIndex* index) {
429 if (network_parser_.get()) 429 if (network_parser_.get())
430 return network_parser_->UpdateStatus(key, value, this, index); 430 return network_parser_->UpdateStatus(key, value, this, index);
431 return false; 431 return false;
432 } 432 }
433 433
434 //////////////////////////////////////////////////////////////////////////////// 434 ////////////////////////////////////////////////////////////////////////////////
435 // EthernetNetwork 435 // EthernetNetwork
436 436
437 EthernetNetwork::EthernetNetwork(const std::string& service_path) 437 EthernetNetwork::EthernetNetwork(const std::string& service_path)
(...skipping 2528 matching lines...) Expand 10 before | Expand all | Expand 10 after
2966 virtual NetworkIPConfigVector GetIPConfigs( 2966 virtual NetworkIPConfigVector GetIPConfigs(
2967 const std::string& device_path, 2967 const std::string& device_path,
2968 std::string* hardware_address, 2968 std::string* hardware_address,
2969 HardwareAddressFormat format) OVERRIDE; 2969 HardwareAddressFormat format) OVERRIDE;
2970 virtual void SetIPConfig(const NetworkIPConfig& ipconfig) OVERRIDE; 2970 virtual void SetIPConfig(const NetworkIPConfig& ipconfig) OVERRIDE;
2971 2971
2972 ////////////////////////////////////////////////////////////////////////////// 2972 //////////////////////////////////////////////////////////////////////////////
2973 // Calbacks. 2973 // Calbacks.
2974 static void NetworkStatusChangedHandler( 2974 static void NetworkStatusChangedHandler(
2975 void* object, const char* path, const char* key, const Value* value); 2975 void* object, const char* path, const char* key, const Value* value);
2976 void UpdateNetworkStatus( 2976 void UpdateNetworkStatus(const std::string& path,
2977 const std::string& path, const std::string& key, const Value& value); 2977 const std::string& key,
2978 Value* value);
2978 2979
2979 static void NetworkDevicePropertyChangedHandler( 2980 static void NetworkDevicePropertyChangedHandler(
2980 void* object, const char* path, const char* key, const Value* value); 2981 void* object, const char* path, const char* key, const Value* value);
2981 void UpdateNetworkDeviceStatus( 2982 void UpdateNetworkDeviceStatus(
2982 const std::string& path, const std::string& key, const Value& value); 2983 const std::string& path, const std::string& key, Value* value);
2983 2984
2984 static void PinOperationCallback(void* object, 2985 static void PinOperationCallback(void* object,
2985 const char* path, 2986 const char* path,
2986 NetworkMethodErrorType error, 2987 NetworkMethodErrorType error,
2987 const char* error_message); 2988 const char* error_message);
2988 2989
2989 static void CellularRegisterCallback(void* object, 2990 static void CellularRegisterCallback(void* object,
2990 const char* path, 2991 const char* path,
2991 NetworkMethodErrorType error, 2992 NetworkMethodErrorType error,
2992 const char* error_message); 2993 const char* error_message);
(...skipping 166 matching lines...) Expand 10 before | Expand all | Expand 10 after
3159 } 3160 }
3160 3161
3161 // static callback 3162 // static callback
3162 void NetworkLibraryImplCros::NetworkStatusChangedHandler( 3163 void NetworkLibraryImplCros::NetworkStatusChangedHandler(
3163 void* object, const char* path, const char* key, const Value* value) { 3164 void* object, const char* path, const char* key, const Value* value) {
3164 NetworkLibraryImplCros* networklib = 3165 NetworkLibraryImplCros* networklib =
3165 static_cast<NetworkLibraryImplCros*>(object); 3166 static_cast<NetworkLibraryImplCros*>(object);
3166 DCHECK(networklib); 3167 DCHECK(networklib);
3167 if (key == NULL || value == NULL || path == NULL || object == NULL) 3168 if (key == NULL || value == NULL || path == NULL || object == NULL)
3168 return; 3169 return;
3169 networklib->UpdateNetworkStatus(std::string(path), std::string(key), *value); 3170 networklib->UpdateNetworkStatus(std::string(path),
3171 std::string(key),
3172 const_cast<Value*>(value));
3170 } 3173 }
3171 3174
3172 void NetworkLibraryImplCros::UpdateNetworkStatus( 3175 void NetworkLibraryImplCros::UpdateNetworkStatus(const std::string& path,
3173 const std::string& path, const std::string& key, const Value& value) { 3176 const std::string& key,
3177 Value* value) {
3174 CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 3178 CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
3175 Network* network = FindNetworkByPath(path); 3179 Network* network = FindNetworkByPath(path);
3176 if (network) { 3180 if (network) {
3177 VLOG(2) << "UpdateNetworkStatus: " << network->name() << "." << key; 3181 VLOG(2) << "UpdateNetworkStatus: " << network->name() << "." << key;
3178 bool prev_connected = network->connected(); 3182 bool prev_connected = network->connected();
3179 if (!network->UpdateStatus(key, value, NULL)) { 3183 if (!network->UpdateStatus(key, value, NULL)) {
3180 LOG(WARNING) << "UpdateNetworkStatus: Error updating: " 3184 LOG(WARNING) << "UpdateNetworkStatus: Error updating: "
3181 << path << "." << key; 3185 << path << "." << key;
3182 } 3186 }
3183 // If we just connected, this may have been added to remembered list. 3187 // If we just connected, this may have been added to remembered list.
3184 if (!prev_connected && network->connected()) 3188 if (!prev_connected && network->connected())
3185 RequestRememberedNetworksUpdate(); 3189 RequestRememberedNetworksUpdate();
3186 NotifyNetworkChanged(network); 3190 NotifyNetworkChanged(network);
3187 // Anything observing the manager needs to know about any service change. 3191 // Anything observing the manager needs to know about any service change.
3188 NotifyNetworkManagerChanged(false); // Not forced. 3192 NotifyNetworkManagerChanged(false); // Not forced.
3189 } 3193 }
3190 } 3194 }
3191 3195
3192 // static callback 3196 // static callback
3193 void NetworkLibraryImplCros::NetworkDevicePropertyChangedHandler( 3197 void NetworkLibraryImplCros::NetworkDevicePropertyChangedHandler(
3194 void* object, const char* path, const char* key, const Value* value) { 3198 void* object, const char* path, const char* key, const Value* value) {
3195 NetworkLibraryImplCros* networklib = 3199 NetworkLibraryImplCros* networklib =
3196 static_cast<NetworkLibraryImplCros*>(object); 3200 static_cast<NetworkLibraryImplCros*>(object);
3197 DCHECK(networklib); 3201 DCHECK(networklib);
3198 if (key == NULL || value == NULL || path == NULL || object == NULL) 3202 if (key == NULL || value == NULL || path == NULL || object == NULL)
3199 return; 3203 return;
3200 networklib->UpdateNetworkDeviceStatus(std::string(path), 3204 networklib->UpdateNetworkDeviceStatus(std::string(path),
3201 std::string(key), 3205 std::string(key),
3202 *value); 3206 const_cast<Value*>(value));
3203 } 3207 }
3204 3208
3205 void NetworkLibraryImplCros::UpdateNetworkDeviceStatus( 3209 void NetworkLibraryImplCros::UpdateNetworkDeviceStatus(const std::string& path,
3206 const std::string& path, const std::string& key, const Value& value) { 3210 const std::string& key,
3211 Value* value) {
3207 CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 3212 CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
3208 NetworkDevice* device = FindNetworkDeviceByPath(path); 3213 NetworkDevice* device = FindNetworkDeviceByPath(path);
3209 if (device) { 3214 if (device) {
3210 VLOG(2) << "UpdateNetworkDeviceStatus: " << device->name() << "." << key; 3215 VLOG(2) << "UpdateNetworkDeviceStatus: " << device->name() << "." << key;
3211 PropertyIndex index = PROPERTY_INDEX_UNKNOWN; 3216 PropertyIndex index = PROPERTY_INDEX_UNKNOWN;
3212 if (device->UpdateStatus(key, value, &index)) { 3217 if (device->UpdateStatus(key, value, &index)) {
3213 if (index == PROPERTY_INDEX_CELLULAR_ALLOW_ROAMING) { 3218 if (index == PROPERTY_INDEX_CELLULAR_ALLOW_ROAMING) {
3214 bool settings_value = 3219 bool settings_value =
3215 UserCrosSettingsProvider::cached_data_roaming_enabled(); 3220 UserCrosSettingsProvider::cached_data_roaming_enabled();
3216 if (device->data_roaming_allowed() != settings_value) { 3221 if (device->data_roaming_allowed() != settings_value) {
(...skipping 1395 matching lines...) Expand 10 before | Expand all | Expand 10 after
4612 return network_library; 4617 return network_library;
4613 } 4618 }
4614 4619
4615 ///////////////////////////////////////////////////////////////////////////// 4620 /////////////////////////////////////////////////////////////////////////////
4616 4621
4617 } // namespace chromeos 4622 } // namespace chromeos
4618 4623
4619 // Allows InvokeLater without adding refcounting. This class is a Singleton and 4624 // Allows InvokeLater without adding refcounting. This class is a Singleton and
4620 // won't be deleted until its last InvokeLater is run. 4625 // won't be deleted until its last InvokeLater is run.
4621 DISABLE_RUNNABLE_METHOD_REFCOUNT(chromeos::NetworkLibraryImplBase); 4626 DISABLE_RUNNABLE_METHOD_REFCOUNT(chromeos::NetworkLibraryImplBase);
OLDNEW
« no previous file with comments | « chrome/browser/chromeos/cros/network_library.h ('k') | chrome/browser/chromeos/cros/network_parser.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698