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

Unified Diff: chrome/browser/chromeos/cros/network_library_impl_stub.cc

Issue 23618026: NOT FOR SUBMIT: Remove NetworkLibrary (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebase Created 7 years, 3 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/chromeos/cros/network_library_impl_stub.cc
diff --git a/chrome/browser/chromeos/cros/network_library_impl_stub.cc b/chrome/browser/chromeos/cros/network_library_impl_stub.cc
deleted file mode 100644
index af7ec4408ca5a40ee6f0f725c3bfeba04e43b7f8..0000000000000000000000000000000000000000
--- a/chrome/browser/chromeos/cros/network_library_impl_stub.cc
+++ /dev/null
@@ -1,784 +0,0 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "chrome/browser/chromeos/cros/network_library_impl_stub.h"
-
-#include "base/bind.h"
-#include "base/command_line.h"
-#include "base/stl_util.h"
-#include "chrome/browser/chromeos/cros/native_network_constants.h"
-#include "chromeos/chromeos_switches.h"
-#include "content/public/browser/browser_thread.h"
-#include "third_party/cros_system_api/dbus/service_constants.h"
-
-using content::BrowserThread;
-
-namespace {
-
-bool IsEthernetEnabled() {
- return !CommandLine::ForCurrentProcess()->HasSwitch(
- chromeos::switches::kDisableStubEthernet);
-}
-
-bool IsInteractive() {
- return CommandLine::ForCurrentProcess()->HasSwitch(
- chromeos::switches::kEnableStubInteractive);
-}
-
-} // namespace
-
-namespace chromeos {
-
-NetworkLibraryImplStub::NetworkLibraryImplStub()
- : ip_address_("1.1.1.1"),
- hardware_address_("01:23:45:67:89:ab"),
- pin_(""),
- pin_required_(false),
- pin_entered_(false),
- network_priority_order_(0),
- weak_pointer_factory_(this) {
-}
-
-NetworkLibraryImplStub::~NetworkLibraryImplStub() {
- disabled_wifi_networks_.clear();
- disabled_cellular_networks_.clear();
- disabled_wimax_networks_.clear();
- STLDeleteValues(&service_configurations_);
-}
-
-void NetworkLibraryImplStub::Init() {
- is_locked_ = false;
-
- // Enable only Cellular initially
- int devices = (1 << TYPE_WIFI) | (1 << TYPE_CELLULAR) | (1 << TYPE_WIMAX);
- if (IsEthernetEnabled())
- devices |= 1 << TYPE_ETHERNET;
- available_devices_ = devices;
- uninitialized_devices_ = (1 << TYPE_CELLULAR);
- enabled_devices_ = (available_devices_ & (1 << TYPE_ETHERNET));
-
- if (IsInteractive()) {
- const int kWifiInitDelaySeconds = 5;
- const int kCellularInitDelaySeconds = 10;
- const int kCellularActivateDelaySeconds = 15;
- BrowserThread::PostDelayedTask(
- BrowserThread::UI, FROM_HERE,
- base::Bind(&NetworkLibraryImplStub::CompleteWifiInit,
- weak_pointer_factory_.GetWeakPtr()),
- base::TimeDelta::FromSeconds(kWifiInitDelaySeconds));
- BrowserThread::PostDelayedTask(
- BrowserThread::UI, FROM_HERE,
- base::Bind(&NetworkLibraryImplStub::CompleteCellularInit,
- weak_pointer_factory_.GetWeakPtr()),
- base::TimeDelta::FromSeconds(kCellularInitDelaySeconds));
- BrowserThread::PostDelayedTask(
- BrowserThread::UI, FROM_HERE,
- base::Bind(&NetworkLibraryImplStub::CompleteCellularActivate,
- weak_pointer_factory_.GetWeakPtr()),
- base::TimeDelta::FromSeconds(kCellularActivateDelaySeconds));
- } else {
- CompleteWifiInit();
- CompleteCellularInit();
- }
-}
-
-bool NetworkLibraryImplStub::IsCros() const {
- return false;
-}
-
-////////////////////////////////////////////////////////////////////////////
-// NetworkLibraryImplStub private methods.
-
-void NetworkLibraryImplStub::CompleteWifiInit() {
- VLOG(1) << "CompleteWifiInit()";
-
- uninitialized_devices_ &= ~(1 << TYPE_WIFI);
- enabled_devices_ |= (available_devices_ & (1 << TYPE_WIFI));
-
- // Profiles
- AddProfile("default", PROFILE_SHARED);
- AddProfile("user", PROFILE_USER);
-
- // Networks
- // If these change, the expectations in network_library_unittest and
- // network_menu_icon_unittest need to be changed also.
-
- if (IsEthernetEnabled()) {
- Network* ethernet = new EthernetNetwork("eth1");
- ethernet->set_name("Fake Ethernet");
- ethernet->set_connected();
- AddStubNetwork(ethernet, PROFILE_SHARED);
- ethernet->set_is_active(ethernet->connected());
- }
-
- WifiNetwork* wifi1 = new WifiNetwork("wifi1");
- wifi1->set_name("Fake WiFi1");
- wifi1->set_strength(100);
- wifi1->set_connected();
- wifi1->set_encryption(SECURITY_NONE);
- AddStubNetwork(wifi1, PROFILE_SHARED);
-
- WifiNetwork* wifi2 = new WifiNetwork("wifi2");
- wifi2->set_name("Fake WiFi2");
- wifi2->set_strength(70);
- wifi2->set_encryption(SECURITY_NONE);
- AddStubNetwork(wifi2, PROFILE_SHARED);
-
- WifiNetwork* wifi3 = new WifiNetwork("wifi3");
- wifi3->set_name("Fake WiFi3 Encrypted with a long name");
- wifi3->set_strength(60);
- wifi3->set_encryption(SECURITY_WEP);
- wifi3->set_passphrase_required(true);
- AddStubNetwork(wifi3, PROFILE_USER);
-
- CertificatePattern pattern;
- IssuerSubjectPattern issuer;
- issuer.set_organization("Google, Inc.");
- pattern.set_issuer(issuer);
- std::vector<std::string> enrollment_uris;
- enrollment_uris.push_back("http://youtu.be/dQw4w9WgXcQ");
- enrollment_uris.push_back("chrome-extension://abc/keygen-cert.html");
- pattern.set_enrollment_uri_list(enrollment_uris);
-
- WifiNetwork* wifi_cert_pattern = new WifiNetwork("wifi_cert_pattern");
- wifi_cert_pattern->set_name("Fake WiFi CertPattern 802.1x");
- wifi_cert_pattern->set_strength(50);
- wifi_cert_pattern->set_connectable(false);
- wifi_cert_pattern->set_encryption(SECURITY_8021X);
- wifi_cert_pattern->SetEAPMethod(EAP_METHOD_TLS);
- wifi_cert_pattern->SetEAPUseSystemCAs(true);
- wifi_cert_pattern->SetEAPIdentity("user@example.com");
- wifi_cert_pattern->SetEAPPhase2Auth(EAP_PHASE_2_AUTH_AUTO);
- wifi_cert_pattern->set_client_cert_type(CLIENT_CERT_TYPE_PATTERN);
- wifi_cert_pattern->set_client_cert_pattern(pattern);
- wifi_cert_pattern->set_eap_save_credentials(true);
-
- AddStubNetwork(wifi_cert_pattern, PROFILE_USER);
-
- WifiNetwork* wifi4 = new WifiNetwork("wifi4");
- wifi4->set_name("Fake WiFi4 802.1x");
- wifi4->set_strength(50);
- wifi4->set_connectable(false);
- wifi4->set_encryption(SECURITY_8021X);
- wifi4->SetEAPMethod(EAP_METHOD_PEAP);
- wifi4->SetEAPIdentity("nobody@google.com");
- wifi4->SetEAPPassphrase("password");
- AddStubNetwork(wifi4, PROFILE_NONE);
-
- WifiNetwork* wifi5 = new WifiNetwork("wifi5");
- wifi5->set_name("Fake WiFi5 UTF-8 SSID ");
- wifi5->SetSsid("Fake WiFi5 UTF-8 SSID \u3042\u3044\u3046");
- wifi5->set_strength(25);
- AddStubNetwork(wifi5, PROFILE_NONE);
-
- WifiNetwork* wifi6 = new WifiNetwork("wifi6");
- wifi6->set_name("Fake WiFi6 latin-1 SSID ");
- wifi6->SetSsid("Fake WiFi6 latin-1 SSID \xc0\xcb\xcc\xd6\xfb");
- wifi6->set_strength(20);
- AddStubNetwork(wifi6, PROFILE_NONE);
-
- WifiNetwork* wifi7 = new WifiNetwork("wifi7");
- wifi7->set_name("Fake Wifi7 (policy-managed)");
- wifi7->set_strength(100);
- wifi7->set_connectable(false);
- wifi7->set_passphrase_required(true);
- wifi7->set_encryption(SECURITY_8021X);
- wifi7->SetEAPMethod(EAP_METHOD_PEAP);
- wifi7->SetEAPIdentity("enterprise@example.com");
- wifi7->SetEAPPassphrase("password");
- NetworkUIData wifi7_ui_data;
- wifi7_ui_data.set_onc_source(onc::ONC_SOURCE_DEVICE_POLICY);
- wifi7->set_ui_data(wifi7_ui_data);
- AddStubNetwork(wifi7, PROFILE_USER);
-
- VirtualNetwork* vpn1 = new VirtualNetwork("vpn1");
- vpn1->set_name("Fake VPN1");
- vpn1->set_server_hostname("vpn1server.fake.com");
- vpn1->set_provider_type(PROVIDER_TYPE_L2TP_IPSEC_PSK);
- vpn1->set_username("VPN User 1");
- AddStubNetwork(vpn1, PROFILE_USER);
-
- VirtualNetwork* vpn2 = new VirtualNetwork("vpn2");
- vpn2->set_name("Fake VPN2");
- vpn2->set_server_hostname("vpn2server.fake.com");
- vpn2->set_provider_type(PROVIDER_TYPE_L2TP_IPSEC_USER_CERT);
- vpn2->set_username("VPN User 2");
- AddStubNetwork(vpn2, PROFILE_USER);
-
- VirtualNetwork* vpn3 = new VirtualNetwork("vpn3");
- vpn3->set_name("Fake VPN3");
- vpn3->set_server_hostname("vpn3server.fake.com");
- vpn3->set_provider_type(PROVIDER_TYPE_OPEN_VPN);
- AddStubNetwork(vpn3, PROFILE_USER);
-
- VirtualNetwork* vpn4 = new VirtualNetwork("vpn4");
- vpn4->set_name("Fake VPN4 (policy-managed)");
- vpn4->set_server_hostname("vpn4server.fake.com");
- vpn4->set_provider_type(PROVIDER_TYPE_OPEN_VPN);
- NetworkUIData vpn4_ui_data;
- vpn4_ui_data.set_onc_source(onc::ONC_SOURCE_DEVICE_POLICY);
- vpn4->set_ui_data(vpn4_ui_data);
- AddStubNetwork(vpn4, PROFILE_USER);
-
- VirtualNetwork* vpn_cert_pattern = new VirtualNetwork("vpn_cert_pattern");
- vpn_cert_pattern->set_name("Fake VPN CertPattern");
- vpn_cert_pattern->set_server_hostname("vpn4server.fake.com");
- vpn_cert_pattern->set_provider_type(PROVIDER_TYPE_OPEN_VPN);
- vpn_cert_pattern->set_client_cert_type(CLIENT_CERT_TYPE_PATTERN);
- vpn_cert_pattern->set_client_cert_pattern(pattern);
-
- AddStubNetwork(vpn_cert_pattern, PROFILE_USER);
-
- wifi_scanning_ = false;
-
- // Ensure our active network is connected and vice versa, otherwise our
- // autotest browser_tests sometimes conclude the device is offline.
- CHECK(active_network()->connected())
- << "Active: " << active_network()->name();
- CHECK(connected_network()->is_active());
-
- std::string test_blob(
- "{"
- " \"NetworkConfigurations\": ["
- " {"
- " \"GUID\": \"guid\","
- " \"Type\": \"VPN\","
- " \"Name\": \"VPNtest\","
- " \"VPN\": {"
- " \"Host\": \"172.22.12.98\","
- " \"Type\": \"L2TP-IPsec\","
- " \"IPsec\": {"
- " \"AuthenticationType\": \"PSK\","
- " \"IKEVersion\": 2,"
- " \"PSK\": \"chromeos\","
- " },"
- " \"L2TP\": {"
- " \"Username\": \"vpntest\","
- " }"
- " }"
- " }"
- " ],"
- " \"Certificates\": []"
- "}");
-// LoadOncNetworks(test_blob, "", onc::ONC_SOURCE_USER_IMPORT, NULL);
-
- SignalNetworkManagerObservers();
-}
-
-void NetworkLibraryImplStub::CompleteCellularInit() {
- VLOG(1) << "CompleteCellularInit()";
-
- uninitialized_devices_ &= ~(1 << TYPE_CELLULAR);
- uninitialized_devices_ &= ~(1 << TYPE_WIMAX);
- enabled_devices_ |= (available_devices_ & (1 << TYPE_CELLULAR));
- enabled_devices_ |= (available_devices_ & (1 << TYPE_WIMAX));
-
- base::ListValue supported_carriers;
- supported_carriers.Append(new StringValue("Generic CDMA Carrier 1"));
- supported_carriers.Append(new StringValue("Generic UMTS"));
- supported_carriers.Append(new StringValue("Generic CDMA Carrier 2"));
- supported_carriers.Append(new StringValue("Generic CDMA Carrier 3"));
-
- NetworkDevice* cellular = new NetworkDevice("cellular");
- cellular->type_ = TYPE_CELLULAR;
- cellular->set_technology_family(TECHNOLOGY_FAMILY_CDMA);
- cellular->set_carrier("Generic CDMA Carrier 2");
- cellular->imsi_ = "123456789012345";
- cellular->set_supported_carriers(supported_carriers);
- device_map_["cellular"] = cellular;
-
- CellularApn apn;
- apn.apn = "apn";
- apn.network_id = "network_id";
- apn.username = "username";
- apn.password = "password";
- apn.name = "name";
- apn.localized_name = "localized_name";
- apn.language = "language";
-
- CellularApnList apn_list;
- apn_list.push_back(apn);
-
- NetworkDevice* cellular_gsm = new NetworkDevice("cellular_gsm");
- cellular_gsm->type_ = TYPE_CELLULAR;
- cellular_gsm->set_technology_family(TECHNOLOGY_FAMILY_GSM);
- cellular_gsm->imsi_ = "123456789012345";
- cellular_gsm->set_sim_pin_required(SIM_PIN_REQUIRED);
- cellular_gsm->set_provider_apn_list(apn_list);
- cellular_gsm->set_supported_carriers(supported_carriers);
- device_map_["cellular_gsm"] = cellular_gsm;
-
- CellularNetwork* cellular1 = new CellularNetwork("cellular1");
- cellular1->set_name("Fake Cellular 1");
- cellular1->set_device_path(cellular->device_path());
- cellular1->set_strength(100);
- cellular1->set_connected();
- cellular1->set_activation_state(ACTIVATION_STATE_ACTIVATED);
- cellular1->set_payment_url(std::string("http://www.google.com"));
- cellular1->set_usage_url(std::string("http://www.google.com"));
- cellular1->set_network_technology(NETWORK_TECHNOLOGY_EVDO);
- AddStubNetwork(cellular1, PROFILE_NONE);
-
- CellularNetwork* cellular2 = new CellularNetwork("cellular2");
- cellular2->set_name("Fake Cellular 2");
- cellular2->set_device_path(cellular->device_path());
- cellular2->set_strength(50);
- cellular2->set_activation_state(ACTIVATION_STATE_ACTIVATING);
- cellular2->set_network_technology(NETWORK_TECHNOLOGY_UMTS);
- cellular2->set_roaming_state(ROAMING_STATE_ROAMING);
- cellular2->set_payment_url(std::string("http://www.google.com"));
- cellular2->set_usage_url(std::string("http://www.google.com"));
- AddStubNetwork(cellular2, PROFILE_NONE);
-
- CellularNetwork* cellular3 = new CellularNetwork("cellular3");
- cellular3->set_name("Fake Cellular 3 (policy-managed)");
- cellular3->set_device_path(cellular->device_path());
- cellular3->set_activation_state(ACTIVATION_STATE_ACTIVATED);
- cellular3->set_network_technology(NETWORK_TECHNOLOGY_EVDO);
- NetworkUIData cellular3_ui_data;
- cellular3_ui_data.set_onc_source(onc::ONC_SOURCE_USER_POLICY);
- cellular3->set_ui_data(cellular3_ui_data);
- AddStubNetwork(cellular3, PROFILE_NONE);
-
- CellularNetwork* cellular4 = new CellularNetwork("cellular4");
- cellular4->set_name("Fake Cellular 4 (policy-managed)");
- cellular4->set_device_path(cellular_gsm->device_path());
- cellular4->set_activation_state(ACTIVATION_STATE_ACTIVATED);
- cellular4->set_network_technology(NETWORK_TECHNOLOGY_GSM);
- NetworkUIData cellular4_ui_data;
- cellular4_ui_data.set_onc_source(onc::ONC_SOURCE_USER_POLICY);
- cellular4->set_ui_data(cellular4_ui_data);
- AddStubNetwork(cellular4, PROFILE_NONE);
-
- WimaxNetwork* wimax1 = new WimaxNetwork("wimax1");
- wimax1->set_name("Fake WiMAX Protected");
- wimax1->set_strength(75);
- wimax1->set_connectable(true);
- wimax1->set_eap_identity("WiMAX User 1");
- wimax1->set_passphrase_required(true);
- AddStubNetwork(wimax1, PROFILE_NONE);
-
- WimaxNetwork* wimax2 = new WimaxNetwork("wimax2");
- wimax2->set_name("Fake WiMAX Open");
- wimax2->set_strength(50);
- wimax2->set_connected();
- wimax2->set_passphrase_required(false);
- AddStubNetwork(wimax2, PROFILE_NONE);
-
- SignalNetworkManagerObservers();
-}
-
-void NetworkLibraryImplStub::CompleteCellularActivate() {
- VLOG(1) << "CompleteCellularActivate()";
- CellularNetwork* cellular2 = FindCellularNetworkByPath("cellular2");
- cellular2->set_activation_state(ACTIVATION_STATE_ACTIVATED);
- SignalNetworkManagerObservers();
-}
-
-void NetworkLibraryImplStub::AddStubNetwork(
- Network* network, NetworkProfileType profile_type) {
- // Currently we don't prioritize networks in Shill so don't do so in the stub.
- // network->priority_order_ = network_priority_order_++;
- network->CalculateUniqueId();
- if (!network->unique_id().empty())
- network_unique_id_map_[network->unique_id()] = network;
- AddNetwork(network);
- UpdateActiveNetwork(network);
- SetProfileType(network, profile_type);
- AddStubRememberedNetwork(network);
-}
-
-// Add a remembered network to the appropriate profile if specified.
-void NetworkLibraryImplStub::AddStubRememberedNetwork(Network* network) {
- if (network->profile_type() == PROFILE_NONE)
- return;
-
- Network* remembered = FindRememberedFromNetwork(network);
- if (remembered) {
- // This network is already in the rememebred list. Check to see if the
- // type has changed.
- if (remembered->profile_type() == network->profile_type())
- return; // Same type, nothing to do.
- // Delete the existing remembered network from the previous profile.
- DeleteRememberedNetwork(remembered->service_path());
- remembered = NULL;
- }
-
- NetworkProfile* profile = GetProfileForType(network->profile_type());
- if (profile) {
- profile->services.insert(network->service_path());
- } else {
- LOG(ERROR) << "No profile type: " << network->profile_type();
- return;
- }
-
- if (network->type() == TYPE_WIFI) {
- WifiNetwork* remembered_wifi = new WifiNetwork(network->service_path());
- remembered_wifi->set_encryption(remembered_wifi->encryption());
- NetworkUIData wifi_ui_data;
- wifi_ui_data.set_onc_source(network->ui_data().onc_source());
- remembered_wifi->set_ui_data(wifi_ui_data);
- remembered = remembered_wifi;
- } else if (network->type() == TYPE_VPN) {
- VirtualNetwork* remembered_vpn =
- new VirtualNetwork(network->service_path());
- remembered_vpn->set_server_hostname("vpnserver.fake.com");
- remembered_vpn->set_provider_type(PROVIDER_TYPE_L2TP_IPSEC_USER_CERT);
- NetworkUIData vpn_ui_data;
- vpn_ui_data.set_onc_source(network->ui_data().onc_source());
- remembered_vpn->set_ui_data(vpn_ui_data);
- remembered = remembered_vpn;
- }
- if (remembered) {
- remembered->set_name(network->name());
- remembered->set_unique_id(network->unique_id());
- // ValidateAndAddRememberedNetwork will insert the network into the right
- // remembered_*_networks_ list and the remembered_network_map_.
- if (!ValidateAndAddRememberedNetwork(remembered))
- NOTREACHED();
- remembered->set_profile_path(profile->path);
- remembered->set_profile_type(profile->type);
- }
-}
-
-void NetworkLibraryImplStub::ConnectToNetwork(Network* network) {
- std::string passphrase;
- if (network->type() == TYPE_WIFI) {
- WifiNetwork* wifi = static_cast<WifiNetwork*>(network);
- if (wifi->passphrase_required())
- passphrase = wifi->passphrase();
- } else if (network->type() == TYPE_WIMAX) {
- WimaxNetwork* wimax = static_cast<WimaxNetwork*>(network);
- if (wimax->passphrase_required())
- passphrase = wimax->eap_passphrase();
- }
- if (!passphrase.empty()) {
- if (passphrase.find("bad") == 0) {
- NetworkConnectCompleted(network, CONNECT_BAD_PASSPHRASE);
- return;
- } else if (passphrase.find("error") == 0) {
- NetworkConnectCompleted(network, CONNECT_FAILED);
- return;
- }
- }
-
- // Disconnect ethernet when connecting to a new network (for UI testing).
- if (IsEthernetEnabled() && network->type() != TYPE_VPN) {
- ethernet_->set_is_active(false);
- ethernet_->set_disconnected();
- }
-
- // Set connected state.
- network->set_connected();
- network->set_user_connect_state(USER_CONNECT_CONNECTED);
-
- // Make the connected network the highest priority network.
- // Set all other networks of the same type to disconnected + inactive;
- int old_priority_order = network->priority_order_;
- network->priority_order_ = 0;
- for (NetworkMap::iterator iter = network_map_.begin();
- iter != network_map_.end(); ++iter) {
- Network* other = iter->second;
- if (other == network)
- continue;
- if (other->priority_order_ < old_priority_order)
- other->priority_order_++;
- if (other->type() == network->type()) {
- other->set_is_active(false);
- other->set_disconnected();
- }
- }
-
- // Remember connected network.
- if (network->profile_type() == PROFILE_NONE) {
- NetworkProfileType profile_type = PROFILE_USER;
- if (network->type() == TYPE_WIFI) {
- WifiNetwork* wifi = static_cast<WifiNetwork*>(network);
- if (!wifi->encrypted())
- profile_type = PROFILE_SHARED;
- }
- SetProfileType(network, profile_type);
- }
- AddStubRememberedNetwork(network);
-
- // Call Completed and signal observers.
- NetworkConnectCompleted(network, CONNECT_SUCCESS);
-}
-
-void NetworkLibraryImplStub::ScanCompleted() {
- wifi_scanning_ = false;
- SignalNetworkManagerObservers();
-}
-
-//////////////////////////////////////////////////////////////////////////////
-// NetworkLibraryImplBase implementation.
-
-void NetworkLibraryImplStub::MonitorNetworkStart(
- const std::string& service_path) {}
-
-void NetworkLibraryImplStub::MonitorNetworkStop(
- const std::string& service_path) {}
-
-void NetworkLibraryImplStub::MonitorNetworkDeviceStart(
- const std::string& device_path) {}
-
-void NetworkLibraryImplStub::MonitorNetworkDeviceStop(
- const std::string& device_path) {}
-
-void NetworkLibraryImplStub::CallConfigureService(
- const std::string& identifier,
- const DictionaryValue* info) {
- DictionaryValue*& config_entry = service_configurations_[identifier];
- delete config_entry;
- config_entry = info->DeepCopy();
-}
-
-void NetworkLibraryImplStub::CallConnectToNetwork(Network* network) {
- // Immediately set the network to active to mimic shill's behavior.
- SetActiveNetwork(network->type(), network->service_path());
- // If a delay has been set (i.e. we are interactive), delay the call to
- // ConnectToNetwork (but signal observers since we changed connecting state).
- if (IsInteractive()) {
- const int kConnectDelayMs = 4 * 1000;
- BrowserThread::PostDelayedTask(
- BrowserThread::UI, FROM_HERE,
- base::Bind(&NetworkLibraryImplStub::ConnectToNetwork,
- weak_pointer_factory_.GetWeakPtr(), network),
- base::TimeDelta::FromMilliseconds(kConnectDelayMs));
- SignalNetworkManagerObservers();
- NotifyNetworkChanged(network);
- } else {
- ConnectToNetwork(network);
- }
-}
-
-void NetworkLibraryImplStub::CallRequestWifiNetworkAndConnect(
- const std::string& ssid, ConnectionSecurity security) {
- WifiNetwork* wifi = new WifiNetwork(ssid);
- wifi->set_name(ssid);
- wifi->set_encryption(security);
- AddNetwork(wifi);
- ConnectToWifiNetworkUsingConnectData(wifi);
- SignalNetworkManagerObservers();
-}
-
-void NetworkLibraryImplStub::CallRequestVirtualNetworkAndConnect(
- const std::string& service_name,
- const std::string& server_hostname,
- ProviderType provider_type) {
- VirtualNetwork* vpn = new VirtualNetwork(service_name);
- vpn->set_name(service_name);
- vpn->set_server_hostname(server_hostname);
- vpn->set_provider_type(provider_type);
- AddNetwork(vpn);
- ConnectToVirtualNetworkUsingConnectData(vpn);
- SignalNetworkManagerObservers();
-}
-
-void NetworkLibraryImplStub::CallDeleteRememberedNetwork(
- const std::string& profile_path,
- const std::string& service_path) {}
-
-void NetworkLibraryImplStub::CallEnableNetworkDeviceType(
- ConnectionType device, bool enable) {
- if (enable) {
- if (device == TYPE_WIFI && !wifi_enabled()) {
- wifi_networks_.swap(disabled_wifi_networks_);
- disabled_wifi_networks_.clear();
- RequestNetworkScan();
- } else if (device == TYPE_WIMAX && !wimax_enabled()) {
- wimax_networks_.swap(disabled_wimax_networks_);
- disabled_wimax_networks_.clear();
- } else if (device == TYPE_CELLULAR && !cellular_enabled()) {
- cellular_networks_.swap(disabled_cellular_networks_);
- disabled_cellular_networks_.clear();
- }
- enabled_devices_ |= (1 << device);
- } else {
- if (device == TYPE_WIFI && wifi_enabled()) {
- wifi_networks_.swap(disabled_wifi_networks_);
- wifi_networks_.clear();
- if (active_wifi_)
- DisconnectFromNetwork(active_wifi_);
- } else if (device == TYPE_WIMAX && wimax_enabled()) {
- wimax_networks_.swap(disabled_wimax_networks_);
- wimax_networks_.clear();
- if (active_wimax_)
- DisconnectFromNetwork(active_wimax_);
- } else if (device == TYPE_CELLULAR && cellular_enabled()) {
- cellular_networks_.swap(disabled_cellular_networks_);
- cellular_networks_.clear();
- if (active_cellular_)
- DisconnectFromNetwork(active_cellular_);
- }
- enabled_devices_ &= ~(1 << device);
- }
- SignalNetworkManagerObservers();
-}
-
-void NetworkLibraryImplStub::CallRemoveNetwork(const Network* network) {}
-
-/////////////////////////////////////////////////////////////////////////////
-// NetworkLibrary implementation.
-
-void NetworkLibraryImplStub::ChangePin(const std::string& old_pin,
- const std::string& new_pin) {
- sim_operation_ = SIM_OPERATION_CHANGE_PIN;
- if (!pin_required_ || old_pin == pin_) {
- pin_ = new_pin;
- NotifyPinOperationCompleted(PIN_ERROR_NONE);
- } else {
- NotifyPinOperationCompleted(PIN_ERROR_INCORRECT_CODE);
- }
-}
-
-void NetworkLibraryImplStub::ChangeRequirePin(bool require_pin,
- const std::string& pin) {
- sim_operation_ = SIM_OPERATION_CHANGE_REQUIRE_PIN;
- if (!pin_required_ || pin == pin_) {
- pin_required_ = require_pin;
- NotifyPinOperationCompleted(PIN_ERROR_NONE);
- } else {
- NotifyPinOperationCompleted(PIN_ERROR_INCORRECT_CODE);
- }
-}
-
-void NetworkLibraryImplStub::EnterPin(const std::string& pin) {
- sim_operation_ = SIM_OPERATION_ENTER_PIN;
- if (!pin_required_ || pin == pin_) {
- pin_entered_ = true;
- NotifyPinOperationCompleted(PIN_ERROR_NONE);
- } else {
- NotifyPinOperationCompleted(PIN_ERROR_INCORRECT_CODE);
- }
-}
-
-void NetworkLibraryImplStub::UnblockPin(const std::string& puk,
- const std::string& new_pin) {
- sim_operation_ = SIM_OPERATION_UNBLOCK_PIN;
- // TODO(stevenjb): something?
- NotifyPinOperationCompleted(PIN_ERROR_NONE);
-}
-
-void NetworkLibraryImplStub::RequestCellularScan() {}
-
-void NetworkLibraryImplStub::RequestCellularRegister(
- const std::string& network_id) {}
-
-void NetworkLibraryImplStub::SetCellularDataRoamingAllowed(bool new_value) {}
-
-void NetworkLibraryImplStub::SetCarrier(
- const std::string& carrier,
- const NetworkOperationCallback& completed) {
- // Call the completed callback with a 10s delay if we're interactive.
- int delay_ms = IsInteractive() ? 10000 : 100;
- BrowserThread::PostDelayedTask(
- BrowserThread::UI,
- FROM_HERE,
- base::Bind(completed, "", NETWORK_METHOD_ERROR_NONE,""),
- base::TimeDelta::FromMilliseconds(delay_ms));
-}
-
-bool NetworkLibraryImplStub::IsCellularAlwaysInRoaming() {
- return false;
-}
-
-void NetworkLibraryImplStub::RequestNetworkScan() {
- // This is triggered by user interaction, so set a network connect delay.
- int scan_delay_ms = IsInteractive() ? 2 * 1000 : 100;
- wifi_scanning_ = true;
- BrowserThread::PostDelayedTask(
- BrowserThread::UI, FROM_HERE,
- base::Bind(&NetworkLibraryImplStub::ScanCompleted,
- weak_pointer_factory_.GetWeakPtr()),
- base::TimeDelta::FromMilliseconds(scan_delay_ms));
-}
-
-void NetworkLibraryImplStub::DisconnectFromNetwork(const Network* network) {
- // Update the network state here since no network manager in stub impl.
- Network* modify_network = const_cast<Network*>(network);
- modify_network->set_is_active(false);
- modify_network->set_disconnected();
- if (network == active_wifi_)
- active_wifi_ = NULL;
- else if (network == active_cellular_)
- active_cellular_ = NULL;
- else if (network == active_virtual_)
- active_virtual_ = NULL;
- SignalNetworkManagerObservers();
- NotifyNetworkChanged(network);
-}
-
-void NetworkLibraryImplStub::GetIPConfigs(
- const std::string& device_path,
- HardwareAddressFormat format,
- const NetworkGetIPConfigsCallback& callback) {
- callback.Run(ip_configs_, hardware_address_);
-}
-
-void NetworkLibraryImplStub::SetIPParameters(const std::string& service_path,
- const std::string& address,
- const std::string& netmask,
- const std::string& gateway,
- const std::string& name_servers,
- int dhcp_usage_mask) {
- VLOG(1) << "Setting IP parameters:"
- << "\n address: " << address
- << (dhcp_usage_mask & USE_DHCP_ADDRESS ?
- " (ignored)" : " (in use)")
- << "\n netmask: " << netmask
- << (dhcp_usage_mask & USE_DHCP_NETMASK ?
- " (ignored)" : " (in use)")
- << "\n gateway: " << gateway
- << (dhcp_usage_mask & USE_DHCP_GATEWAY ?
- " (ignored)" : " (in use)")
- << "\n name_servers: " << name_servers
- << (dhcp_usage_mask & USE_DHCP_NAME_SERVERS ?
- " (ignored)" : " (in use)");
-
- Network* network = FindNetworkByPath(service_path);
- if (network)
- ip_configs_.push_back(NetworkIPConfig(network->device_path(),
- IPCONFIG_TYPE_IPV4,
- address,
- netmask,
- gateway,
- name_servers));
-}
-
-void NetworkLibraryImplStub::RequestNetworkServiceProperties(
- const std::string& service_path,
- const NetworkServicePropertiesCallback& callback) {
- BrowserThread::PostDelayedTask(
- BrowserThread::UI,
- FROM_HERE,
- base::Bind(&NetworkLibraryImplStub::SendNetworkServiceProperties,
- weak_pointer_factory_.GetWeakPtr(),
- service_path, callback),
- base::TimeDelta::FromMilliseconds(100));
-}
-
-void NetworkLibraryImplStub::SendNetworkServiceProperties(
- const std::string& service_path,
- const NetworkServicePropertiesCallback& callback) {
- scoped_ptr<base::DictionaryValue> dictionary(new base::DictionaryValue());
- Network* network = FindNetworkByPath(service_path);
- if (network) {
- // Populate a few common properties.
- dictionary->SetString(flimflam::kTypeProperty,
- ConnectionTypeToString(network->type()));
- dictionary->SetString(flimflam::kNameProperty, network->name());
- dictionary->SetString(flimflam::kGuidProperty, network->unique_id());
- dictionary->SetString(flimflam::kStateProperty,
- ConnectionStateToString(network->state()));
- }
- callback.Run(service_path, dictionary.get());
-}
-
-const std::map<std::string, base::DictionaryValue*>&
-NetworkLibraryImplStub::GetConfigurations() {
- return service_configurations_;
-}
-
-} // namespace chromeos
« no previous file with comments | « chrome/browser/chromeos/cros/network_library_impl_stub.h ('k') | chrome/browser/chromeos/cros/network_library_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698