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

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

Issue 10134027: Reimplement RequestNetworkServiceConnect, RequestRequirePin, RequestEnterPin, RequestEnterPin, Requ… (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: _ Created 8 years, 8 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 #include "chrome/browser/chromeos/cros/cros_network_functions.h" 5 #include "chrome/browser/chromeos/cros/cros_network_functions.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/memory/scoped_ptr.h" 8 #include "base/memory/scoped_ptr.h"
9 #include "base/values.h" 9 #include "base/values.h"
10 #include "chrome/browser/chromeos/cros/gvalue_util.h" 10 #include "chrome/browser/chromeos/cros/gvalue_util.h"
(...skipping 204 matching lines...) Expand 10 before | Expand all | Expand 10 after
215 void OnConfigureService(void* object, 215 void OnConfigureService(void* object,
216 const char* service_path, 216 const char* service_path,
217 NetworkMethodErrorType error, 217 NetworkMethodErrorType error,
218 const char* error_message) { 218 const char* error_message) {
219 if (error != NETWORK_METHOD_ERROR_NONE) { 219 if (error != NETWORK_METHOD_ERROR_NONE) {
220 LOG(WARNING) << "Error from ConfigureService callback: " 220 LOG(WARNING) << "Error from ConfigureService callback: "
221 << " Error: " << error << " Message: " << error_message; 221 << " Error: " << error << " Message: " << error_message;
222 } 222 }
223 } 223 }
224 224
225 // A callback used to call a NetworkActionCallback on success.
226 void OnNetworkActionSuccess(const std::string& path,
227 NetworkActionCallback callback,
228 void* object) {
229 callback(object, path.c_str(), NETWORK_METHOD_ERROR_NONE, "");
230 }
231
232 // A callback used to call a NetworkActionCallback on error.
233 void OnNetworkActionError(const std::string& path,
234 NetworkActionCallback callback,
235 void* object,
236 const std::string& error_name,
237 const std::string& error_message) {
238 if (error_name.empty()) {
239 callback(object, path.c_str(), NETWORK_METHOD_ERROR_LOCAL, "");
240 } else {
241 callback(object, path.c_str(), NETWORK_METHOD_ERROR_REMOTE,
242 error_message.c_str());
243 }
244 }
245
225 // Safe string constructor since we can't rely on non NULL pointers 246 // Safe string constructor since we can't rely on non NULL pointers
226 // for string values from libcros. 247 // for string values from libcros.
227 std::string SafeString(const char* s) { 248 std::string SafeString(const char* s) {
228 return s ? std::string(s) : std::string(); 249 return s ? std::string(s) : std::string();
229 } 250 }
230 251
231 // A bool to remember whether we are using Libcros network functions or not. 252 // A bool to remember whether we are using Libcros network functions or not.
232 bool g_libcros_network_functions_enabled = true; 253 bool g_libcros_network_functions_enabled = true;
233 254
234 } // namespace 255 } // namespace
(...skipping 126 matching lines...) Expand 10 before | Expand all | Expand 10 after
361 382
362 CrosNetworkWatcher* CrosMonitorSMS(const std::string& modem_device_path, 383 CrosNetworkWatcher* CrosMonitorSMS(const std::string& modem_device_path,
363 MonitorSMSCallback callback, 384 MonitorSMSCallback callback,
364 void* object) { 385 void* object) {
365 return new CrosSMSWatcher(modem_device_path, callback, object); 386 return new CrosSMSWatcher(modem_device_path, callback, object);
366 } 387 }
367 388
368 void CrosRequestNetworkServiceConnect(const std::string& service_path, 389 void CrosRequestNetworkServiceConnect(const std::string& service_path,
369 NetworkActionCallback callback, 390 NetworkActionCallback callback,
370 void* object) { 391 void* object) {
371 chromeos::RequestNetworkServiceConnect(service_path.c_str(), callback, 392 if (g_libcros_network_functions_enabled) {
372 object); 393 chromeos::RequestNetworkServiceConnect(service_path.c_str(), callback,
394 object);
395 } else {
396 DBusThreadManager::Get()->GetFlimflamServiceClient()->Connect(
397 dbus::ObjectPath(service_path),
398 base::Bind(&OnNetworkActionSuccess, service_path, callback, object),
399 base::Bind(&OnNetworkActionError, service_path, callback, object));
400 }
373 } 401 }
374 402
375 void CrosRequestNetworkManagerProperties( 403 void CrosRequestNetworkManagerProperties(
376 const NetworkPropertiesCallback& callback) { 404 const NetworkPropertiesCallback& callback) {
377 if (g_libcros_network_functions_enabled) { 405 if (g_libcros_network_functions_enabled) {
378 // The newly allocated callback will be deleted in 406 // The newly allocated callback will be deleted in
379 // OnRequestNetworkProperties. 407 // OnRequestNetworkProperties.
380 chromeos::RequestNetworkManagerProperties( 408 chromeos::RequestNetworkManagerProperties(
381 &OnRequestNetworkProperties, 409 &OnRequestNetworkProperties,
382 new OnRequestNetworkPropertiesCallback(callback)); 410 new OnRequestNetworkPropertiesCallback(callback));
(...skipping 144 matching lines...) Expand 10 before | Expand all | Expand 10 after
527 network_type, base::Bind(&DoNothing)); 555 network_type, base::Bind(&DoNothing));
528 } 556 }
529 } 557 }
530 } 558 }
531 559
532 void CrosRequestRequirePin(const std::string& device_path, 560 void CrosRequestRequirePin(const std::string& device_path,
533 const std::string& pin, 561 const std::string& pin,
534 bool enable, 562 bool enable,
535 NetworkActionCallback callback, 563 NetworkActionCallback callback,
536 void* object) { 564 void* object) {
537 chromeos::RequestRequirePin(device_path.c_str(), pin.c_str(), enable, 565 if (g_libcros_network_functions_enabled) {
538 callback, object); 566 chromeos::RequestRequirePin(device_path.c_str(), pin.c_str(), enable,
567 callback, object);
568 } else {
569 DBusThreadManager::Get()->GetFlimflamDeviceClient()->RequirePin(
570 dbus::ObjectPath(device_path), pin, enable,
571 base::Bind(&OnNetworkActionSuccess, device_path, callback, object),
572 base::Bind(&OnNetworkActionError, device_path, callback, object));
573 }
539 } 574 }
540 575
541 void CrosRequestEnterPin(const std::string& device_path, 576 void CrosRequestEnterPin(const std::string& device_path,
542 const std::string& pin, 577 const std::string& pin,
543 NetworkActionCallback callback, 578 NetworkActionCallback callback,
544 void* object) { 579 void* object) {
545 chromeos::RequestEnterPin(device_path.c_str(), pin.c_str(), callback, object); 580 if (g_libcros_network_functions_enabled) {
581 chromeos::RequestEnterPin(device_path.c_str(), pin.c_str(), callback,
582 object);
583 } else {
584 DBusThreadManager::Get()->GetFlimflamDeviceClient()->EnterPin(
585 dbus::ObjectPath(device_path), pin,
586 base::Bind(&OnNetworkActionSuccess, device_path, callback, object),
587 base::Bind(&OnNetworkActionError, device_path, callback, object));
588 }
546 } 589 }
547 590
548 void CrosRequestUnblockPin(const std::string& device_path, 591 void CrosRequestUnblockPin(const std::string& device_path,
549 const std::string& unblock_code, 592 const std::string& unblock_code,
550 const std::string& pin, 593 const std::string& pin,
551 NetworkActionCallback callback, 594 NetworkActionCallback callback,
552 void* object) { 595 void* object) {
553 chromeos::RequestUnblockPin(device_path.c_str(), unblock_code.c_str(), 596 if (g_libcros_network_functions_enabled) {
554 pin.c_str(), callback, object); 597 chromeos::RequestUnblockPin(device_path.c_str(), unblock_code.c_str(),
598 pin.c_str(), callback, object);
599 } else {
600 DBusThreadManager::Get()->GetFlimflamDeviceClient()->UnblockPin(
601 dbus::ObjectPath(device_path), unblock_code, pin,
602 base::Bind(&OnNetworkActionSuccess, device_path, callback, object),
603 base::Bind(&OnNetworkActionError, device_path, callback, object));
604 }
555 } 605 }
556 606
557 void CrosRequestChangePin(const std::string& device_path, 607 void CrosRequestChangePin(const std::string& device_path,
558 const std::string& old_pin, 608 const std::string& old_pin,
559 const std::string& new_pin, 609 const std::string& new_pin,
560 NetworkActionCallback callback, 610 NetworkActionCallback callback,
561 void* object) { 611 void* object) {
562 chromeos::RequestChangePin(device_path.c_str(), old_pin.c_str(), 612 if (g_libcros_network_functions_enabled) {
563 new_pin.c_str(), callback, object); 613 chromeos::RequestChangePin(device_path.c_str(), old_pin.c_str(),
614 new_pin.c_str(), callback, object);
615 } else {
616 DBusThreadManager::Get()->GetFlimflamDeviceClient()->ChangePin(
617 dbus::ObjectPath(device_path), old_pin, new_pin,
618 base::Bind(&OnNetworkActionSuccess, device_path, callback, object),
619 base::Bind(&OnNetworkActionError, device_path, callback, object));
620 }
564 } 621 }
565 622
566 void CrosProposeScan(const std::string& device_path) { 623 void CrosProposeScan(const std::string& device_path) {
567 chromeos::ProposeScan(device_path.c_str()); 624 chromeos::ProposeScan(device_path.c_str());
568 } 625 }
569 626
570 void CrosRequestCellularRegister(const std::string& device_path, 627 void CrosRequestCellularRegister(const std::string& device_path,
571 const std::string& network_id, 628 const std::string& network_id,
572 chromeos::NetworkActionCallback callback, 629 chromeos::NetworkActionCallback callback,
573 void* object) { 630 void* object) {
574 chromeos::RequestCellularRegister(device_path.c_str(), network_id.c_str(), 631 if (g_libcros_network_functions_enabled) {
575 callback, object); 632 chromeos::RequestCellularRegister(device_path.c_str(), network_id.c_str(),
633 callback, object);
634 } else {
635 DBusThreadManager::Get()->GetFlimflamDeviceClient()->Register(
636 dbus::ObjectPath(device_path), network_id,
637 base::Bind(&OnNetworkActionSuccess, device_path, callback, object),
638 base::Bind(&OnNetworkActionError, device_path, callback, object));
639 }
576 } 640 }
577 641
578 bool CrosSetOfflineMode(bool offline) { 642 bool CrosSetOfflineMode(bool offline) {
579 return chromeos::SetOfflineMode(offline); 643 return chromeos::SetOfflineMode(offline);
580 } 644 }
581 645
582 IPConfigStatus* CrosListIPConfigs(const std::string& device_path) { 646 IPConfigStatus* CrosListIPConfigs(const std::string& device_path) {
583 return chromeos::ListIPConfigs(device_path.c_str()); 647 return chromeos::ListIPConfigs(device_path.c_str());
584 } 648 }
585 649
(...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after
665 ScopedGHashTable ghash( 729 ScopedGHashTable ghash(
666 ConvertDictionaryValueToStringValueGHashTable(properties)); 730 ConvertDictionaryValueToStringValueGHashTable(properties));
667 chromeos::ConfigureService("", ghash.get(), OnConfigureService, NULL); 731 chromeos::ConfigureService("", ghash.get(), OnConfigureService, NULL);
668 } else { 732 } else {
669 DBusThreadManager::Get()->GetFlimflamManagerClient()->ConfigureService( 733 DBusThreadManager::Get()->GetFlimflamManagerClient()->ConfigureService(
670 properties, base::Bind(&DoNothing)); 734 properties, base::Bind(&DoNothing));
671 } 735 }
672 } 736 }
673 737
674 } // namespace chromeos 738 } // namespace chromeos
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698