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

Side by Side Diff: chromeos/dbus/shill_manager_client_stub.cc

Issue 12387065: Convert TrayVPN to use new NetworkState code (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix browser_tests Created 7 years, 9 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
« no previous file with comments | « chromeos/dbus/shill_manager_client_stub.h ('k') | chromeos/dbus/shill_service_client_stub.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2013 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 "chromeos/dbus/shill_manager_client_stub.h" 5 #include "chromeos/dbus/shill_manager_client_stub.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/chromeos/chromeos_version.h" 8 #include "base/chromeos/chromeos_version.h"
9 #include "base/command_line.h" 9 #include "base/command_line.h"
10 #include "base/message_loop.h" 10 #include "base/message_loop.h"
(...skipping 224 matching lines...) Expand 10 before | Expand all | Expand 10 after
235 if (GetListProperty(flimflam::kDevicesProperty)->Remove( 235 if (GetListProperty(flimflam::kDevicesProperty)->Remove(
236 device_path_value, NULL)) { 236 device_path_value, NULL)) {
237 CallNotifyObserversPropertyChanged(flimflam::kDevicesProperty, 0); 237 CallNotifyObserversPropertyChanged(flimflam::kDevicesProperty, 0);
238 } 238 }
239 } 239 }
240 240
241 void ShillManagerClientStub::ClearDevices() { 241 void ShillManagerClientStub::ClearDevices() {
242 stub_properties_.Remove(flimflam::kDevicesProperty, NULL); 242 stub_properties_.Remove(flimflam::kDevicesProperty, NULL);
243 } 243 }
244 244
245 void ShillManagerClientStub::ClearServices() {
246 stub_properties_.Remove(flimflam::kServicesProperty, NULL);
247 stub_properties_.Remove(flimflam::kServiceWatchListProperty, NULL);
248 }
249
245 void ShillManagerClientStub::AddService(const std::string& service_path, 250 void ShillManagerClientStub::AddService(const std::string& service_path,
246 bool add_to_watch_list) { 251 bool add_to_watch_list) {
247 if (GetListProperty(flimflam::kServicesProperty)->AppendIfNotPresent( 252 if (GetListProperty(flimflam::kServicesProperty)->AppendIfNotPresent(
248 base::Value::CreateStringValue(service_path))) { 253 base::Value::CreateStringValue(service_path))) {
249 CallNotifyObserversPropertyChanged(flimflam::kServicesProperty, 0); 254 CallNotifyObserversPropertyChanged(flimflam::kServicesProperty, 0);
250 } 255 }
251 if (add_to_watch_list) 256 if (add_to_watch_list)
252 AddServiceToWatchList(service_path); 257 AddServiceToWatchList(service_path);
253 } 258 }
254 259
(...skipping 152 matching lines...) Expand 10 before | Expand all | Expand 10 after
407 base::ListValue* list_property = NULL; 412 base::ListValue* list_property = NULL;
408 if (!stub_properties_.GetListWithoutPathExpansion( 413 if (!stub_properties_.GetListWithoutPathExpansion(
409 property, &list_property)) { 414 property, &list_property)) {
410 list_property = new base::ListValue; 415 list_property = new base::ListValue;
411 stub_properties_.SetWithoutPathExpansion(property, list_property); 416 stub_properties_.SetWithoutPathExpansion(property, list_property);
412 } 417 }
413 return list_property; 418 return list_property;
414 } 419 }
415 420
416 bool ShillManagerClientStub::TechnologyEnabled(const std::string& type) const { 421 bool ShillManagerClientStub::TechnologyEnabled(const std::string& type) const {
422 if (type == flimflam::kTypeVPN)
423 return true; // VPN is always "enabled" since there is no associated device
417 bool enabled = false; 424 bool enabled = false;
418 const base::ListValue* technologies; 425 const base::ListValue* technologies;
419 if (stub_properties_.GetListWithoutPathExpansion( 426 if (stub_properties_.GetListWithoutPathExpansion(
420 flimflam::kEnabledTechnologiesProperty, &technologies)) { 427 flimflam::kEnabledTechnologiesProperty, &technologies)) {
421 base::StringValue type_value(type); 428 base::StringValue type_value(type);
422 if (technologies->Find(type_value) != technologies->end()) 429 if (technologies->Find(type_value) != technologies->end())
423 enabled = true; 430 enabled = true;
424 } 431 }
425 return enabled; 432 return enabled;
426 } 433 }
427 434
428 base::ListValue* ShillManagerClientStub::GetEnabledServiceList( 435 base::ListValue* ShillManagerClientStub::GetEnabledServiceList(
429 const std::string& property) const { 436 const std::string& property) const {
430 base::ListValue* new_service_list = new base::ListValue; 437 base::ListValue* new_service_list = new base::ListValue;
431 const base::ListValue* service_list; 438 const base::ListValue* service_list;
432 if (stub_properties_.GetListWithoutPathExpansion(property, &service_list)) { 439 if (stub_properties_.GetListWithoutPathExpansion(property, &service_list)) {
433 ShillServiceClient::TestInterface* service_client = 440 ShillServiceClient::TestInterface* service_client =
434 DBusThreadManager::Get()->GetShillServiceClient()->GetTestInterface(); 441 DBusThreadManager::Get()->GetShillServiceClient()->GetTestInterface();
435 for (base::ListValue::const_iterator iter = service_list->begin(); 442 for (base::ListValue::const_iterator iter = service_list->begin();
436 iter != service_list->end(); ++iter) { 443 iter != service_list->end(); ++iter) {
437 std::string service_path; 444 std::string service_path;
438 if (!(*iter)->GetAsString(&service_path)) 445 if (!(*iter)->GetAsString(&service_path))
439 continue; 446 continue;
440 const base::DictionaryValue* properties = 447 const base::DictionaryValue* properties =
441 service_client->GetServiceProperties(service_path); 448 service_client->GetServiceProperties(service_path);
449 if (!properties) {
450 LOG(ERROR) << "Properties not found for service: " << service_path;
451 continue;
452 }
442 std::string name; 453 std::string name;
443 properties->GetString(flimflam::kNameProperty, &name); 454 properties->GetString(flimflam::kNameProperty, &name);
444 std::string type; 455 std::string type;
445 properties->GetString(flimflam::kTypeProperty, &type); 456 properties->GetString(flimflam::kTypeProperty, &type);
446 if (TechnologyEnabled(type)) 457 if (TechnologyEnabled(type))
447 new_service_list->Append((*iter)->DeepCopy()); 458 new_service_list->Append((*iter)->DeepCopy());
448 } 459 }
449 } 460 }
450 return new_service_list; 461 return new_service_list;
451 } 462 }
452 463
453 } // namespace chromeos 464 } // namespace chromeos
OLDNEW
« no previous file with comments | « chromeos/dbus/shill_manager_client_stub.h ('k') | chromeos/dbus/shill_service_client_stub.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698