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

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: Rebase 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
« no previous file with comments | « no previous file | chrome/browser/chromeos/cros/cros_network_functions_unittest.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) 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 216 matching lines...) Expand 10 before | Expand all | Expand 10 after
227 void OnConfigureService(void* object, 227 void OnConfigureService(void* object,
228 const char* service_path, 228 const char* service_path,
229 NetworkMethodErrorType error, 229 NetworkMethodErrorType error,
230 const char* error_message) { 230 const char* error_message) {
231 if (error != NETWORK_METHOD_ERROR_NONE) { 231 if (error != NETWORK_METHOD_ERROR_NONE) {
232 LOG(WARNING) << "Error from ConfigureService callback: " 232 LOG(WARNING) << "Error from ConfigureService callback: "
233 << " Error: " << error << " Message: " << error_message; 233 << " Error: " << error << " Message: " << error_message;
234 } 234 }
235 } 235 }
236 236
237 // A callback used to call a NetworkActionCallback on success.
238 void OnNetworkActionSuccess(const std::string& path,
239 NetworkActionCallback callback,
240 void* object) {
241 callback(object, path.c_str(), NETWORK_METHOD_ERROR_NONE, "");
242 }
243
244 // A callback used to call a NetworkActionCallback on error.
245 void OnNetworkActionError(const std::string& path,
246 NetworkActionCallback callback,
247 void* object,
248 const std::string& error_name,
249 const std::string& error_message) {
250 if (error_name.empty()) {
251 callback(object, path.c_str(), NETWORK_METHOD_ERROR_LOCAL, "");
252 } else {
253 callback(object, path.c_str(), NETWORK_METHOD_ERROR_REMOTE,
254 error_message.c_str());
255 }
256 }
257
237 // Safe string constructor since we can't rely on non NULL pointers 258 // Safe string constructor since we can't rely on non NULL pointers
238 // for string values from libcros. 259 // for string values from libcros.
239 std::string SafeString(const char* s) { 260 std::string SafeString(const char* s) {
240 return s ? std::string(s) : std::string(); 261 return s ? std::string(s) : std::string();
241 } 262 }
242 263
243 // A bool to remember whether we are using Libcros network functions or not. 264 // A bool to remember whether we are using Libcros network functions or not.
244 bool g_libcros_network_functions_enabled = true; 265 bool g_libcros_network_functions_enabled = true;
245 266
246 } // namespace 267 } // namespace
(...skipping 133 matching lines...) Expand 10 before | Expand all | Expand 10 after
380 401
381 CrosNetworkWatcher* CrosMonitorSMS(const std::string& modem_device_path, 402 CrosNetworkWatcher* CrosMonitorSMS(const std::string& modem_device_path,
382 MonitorSMSCallback callback, 403 MonitorSMSCallback callback,
383 void* object) { 404 void* object) {
384 return new CrosSMSWatcher(modem_device_path, callback, object); 405 return new CrosSMSWatcher(modem_device_path, callback, object);
385 } 406 }
386 407
387 void CrosRequestNetworkServiceConnect(const std::string& service_path, 408 void CrosRequestNetworkServiceConnect(const std::string& service_path,
388 NetworkActionCallback callback, 409 NetworkActionCallback callback,
389 void* object) { 410 void* object) {
390 chromeos::RequestNetworkServiceConnect(service_path.c_str(), callback, 411 if (g_libcros_network_functions_enabled) {
391 object); 412 chromeos::RequestNetworkServiceConnect(service_path.c_str(), callback,
413 object);
414 } else {
415 DBusThreadManager::Get()->GetFlimflamServiceClient()->Connect(
416 dbus::ObjectPath(service_path),
417 base::Bind(&OnNetworkActionSuccess, service_path, callback, object),
418 base::Bind(&OnNetworkActionError, service_path, callback, object));
419 }
392 } 420 }
393 421
394 void CrosRequestNetworkManagerProperties( 422 void CrosRequestNetworkManagerProperties(
395 const NetworkPropertiesCallback& callback) { 423 const NetworkPropertiesCallback& callback) {
396 if (g_libcros_network_functions_enabled) { 424 if (g_libcros_network_functions_enabled) {
397 // The newly allocated callback will be deleted in 425 // The newly allocated callback will be deleted in
398 // OnRequestNetworkProperties. 426 // OnRequestNetworkProperties.
399 chromeos::RequestNetworkManagerProperties( 427 chromeos::RequestNetworkManagerProperties(
400 &OnRequestNetworkProperties, 428 &OnRequestNetworkProperties,
401 new OnRequestNetworkPropertiesCallback(callback)); 429 new OnRequestNetworkPropertiesCallback(callback));
(...skipping 193 matching lines...) Expand 10 before | Expand all | Expand 10 after
595 network_type, base::Bind(&DoNothing)); 623 network_type, base::Bind(&DoNothing));
596 } 624 }
597 } 625 }
598 } 626 }
599 627
600 void CrosRequestRequirePin(const std::string& device_path, 628 void CrosRequestRequirePin(const std::string& device_path,
601 const std::string& pin, 629 const std::string& pin,
602 bool enable, 630 bool enable,
603 NetworkActionCallback callback, 631 NetworkActionCallback callback,
604 void* object) { 632 void* object) {
605 chromeos::RequestRequirePin(device_path.c_str(), pin.c_str(), enable, 633 if (g_libcros_network_functions_enabled) {
606 callback, object); 634 chromeos::RequestRequirePin(device_path.c_str(), pin.c_str(), enable,
635 callback, object);
636 } else {
637 DBusThreadManager::Get()->GetFlimflamDeviceClient()->RequirePin(
638 dbus::ObjectPath(device_path), pin, enable,
639 base::Bind(&OnNetworkActionSuccess, device_path, callback, object),
640 base::Bind(&OnNetworkActionError, device_path, callback, object));
641 }
607 } 642 }
608 643
609 void CrosRequestEnterPin(const std::string& device_path, 644 void CrosRequestEnterPin(const std::string& device_path,
610 const std::string& pin, 645 const std::string& pin,
611 NetworkActionCallback callback, 646 NetworkActionCallback callback,
612 void* object) { 647 void* object) {
613 chromeos::RequestEnterPin(device_path.c_str(), pin.c_str(), callback, object); 648 if (g_libcros_network_functions_enabled) {
649 chromeos::RequestEnterPin(device_path.c_str(), pin.c_str(), callback,
650 object);
651 } else {
652 DBusThreadManager::Get()->GetFlimflamDeviceClient()->EnterPin(
653 dbus::ObjectPath(device_path), pin,
654 base::Bind(&OnNetworkActionSuccess, device_path, callback, object),
655 base::Bind(&OnNetworkActionError, device_path, callback, object));
656 }
614 } 657 }
615 658
616 void CrosRequestUnblockPin(const std::string& device_path, 659 void CrosRequestUnblockPin(const std::string& device_path,
617 const std::string& unblock_code, 660 const std::string& unblock_code,
618 const std::string& pin, 661 const std::string& pin,
619 NetworkActionCallback callback, 662 NetworkActionCallback callback,
620 void* object) { 663 void* object) {
621 chromeos::RequestUnblockPin(device_path.c_str(), unblock_code.c_str(), 664 if (g_libcros_network_functions_enabled) {
622 pin.c_str(), callback, object); 665 chromeos::RequestUnblockPin(device_path.c_str(), unblock_code.c_str(),
666 pin.c_str(), callback, object);
667 } else {
668 DBusThreadManager::Get()->GetFlimflamDeviceClient()->UnblockPin(
669 dbus::ObjectPath(device_path), unblock_code, pin,
670 base::Bind(&OnNetworkActionSuccess, device_path, callback, object),
671 base::Bind(&OnNetworkActionError, device_path, callback, object));
672 }
623 } 673 }
624 674
625 void CrosRequestChangePin(const std::string& device_path, 675 void CrosRequestChangePin(const std::string& device_path,
626 const std::string& old_pin, 676 const std::string& old_pin,
627 const std::string& new_pin, 677 const std::string& new_pin,
628 NetworkActionCallback callback, 678 NetworkActionCallback callback,
629 void* object) { 679 void* object) {
630 chromeos::RequestChangePin(device_path.c_str(), old_pin.c_str(), 680 if (g_libcros_network_functions_enabled) {
631 new_pin.c_str(), callback, object); 681 chromeos::RequestChangePin(device_path.c_str(), old_pin.c_str(),
682 new_pin.c_str(), callback, object);
683 } else {
684 DBusThreadManager::Get()->GetFlimflamDeviceClient()->ChangePin(
685 dbus::ObjectPath(device_path), old_pin, new_pin,
686 base::Bind(&OnNetworkActionSuccess, device_path, callback, object),
687 base::Bind(&OnNetworkActionError, device_path, callback, object));
688 }
632 } 689 }
633 690
634 void CrosProposeScan(const std::string& device_path) { 691 void CrosProposeScan(const std::string& device_path) {
635 if (g_libcros_network_functions_enabled) { 692 if (g_libcros_network_functions_enabled) {
636 chromeos::ProposeScan(device_path.c_str()); 693 chromeos::ProposeScan(device_path.c_str());
637 } else { 694 } else {
638 DBusThreadManager::Get()->GetFlimflamDeviceClient()->ProposeScan( 695 DBusThreadManager::Get()->GetFlimflamDeviceClient()->ProposeScan(
639 dbus::ObjectPath(device_path), base::Bind(&DoNothing)); 696 dbus::ObjectPath(device_path), base::Bind(&DoNothing));
640 } 697 }
641 } 698 }
642 699
643 void CrosRequestCellularRegister(const std::string& device_path, 700 void CrosRequestCellularRegister(const std::string& device_path,
644 const std::string& network_id, 701 const std::string& network_id,
645 chromeos::NetworkActionCallback callback, 702 chromeos::NetworkActionCallback callback,
646 void* object) { 703 void* object) {
647 chromeos::RequestCellularRegister(device_path.c_str(), network_id.c_str(), 704 if (g_libcros_network_functions_enabled) {
648 callback, object); 705 chromeos::RequestCellularRegister(device_path.c_str(), network_id.c_str(),
706 callback, object);
707 } else {
708 DBusThreadManager::Get()->GetFlimflamDeviceClient()->Register(
709 dbus::ObjectPath(device_path), network_id,
710 base::Bind(&OnNetworkActionSuccess, device_path, callback, object),
711 base::Bind(&OnNetworkActionError, device_path, callback, object));
712 }
649 } 713 }
650 714
651 bool CrosSetOfflineMode(bool offline) { 715 bool CrosSetOfflineMode(bool offline) {
652 return chromeos::SetOfflineMode(offline); 716 return chromeos::SetOfflineMode(offline);
653 } 717 }
654 718
655 IPConfigStatus* CrosListIPConfigs(const std::string& device_path) { 719 IPConfigStatus* CrosListIPConfigs(const std::string& device_path) {
656 return chromeos::ListIPConfigs(device_path.c_str()); 720 return chromeos::ListIPConfigs(device_path.c_str());
657 } 721 }
658 722
(...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after
738 ScopedGHashTable ghash( 802 ScopedGHashTable ghash(
739 ConvertDictionaryValueToStringValueGHashTable(properties)); 803 ConvertDictionaryValueToStringValueGHashTable(properties));
740 chromeos::ConfigureService("", ghash.get(), OnConfigureService, NULL); 804 chromeos::ConfigureService("", ghash.get(), OnConfigureService, NULL);
741 } else { 805 } else {
742 DBusThreadManager::Get()->GetFlimflamManagerClient()->ConfigureService( 806 DBusThreadManager::Get()->GetFlimflamManagerClient()->ConfigureService(
743 properties, base::Bind(&DoNothing)); 807 properties, base::Bind(&DoNothing));
744 } 808 }
745 } 809 }
746 810
747 } // namespace chromeos 811 } // namespace chromeos
OLDNEW
« no previous file with comments | « no previous file | chrome/browser/chromeos/cros/cros_network_functions_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698